-
Notifications
You must be signed in to change notification settings - Fork 9.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Debugger Viewer doesn't work, can't connect to ScrollView server #3000
Comments
please provide full information how to reproduce your problem. |
Seconded - the Platform: MacOS Big Sur 11.1 Steps to reproduce:
|
Without any hints, we can end up with a UDP socket which won't work with the TCP socket that the Java display server is listening on. Use hints for TCP v4 so that we get the right kind of socket returned. Also, delete some obsolete comments nearby.
I just ran into this as well and it took a fair amount of debug setup and head scratching to figure out what was going on, particularly since both sides of the communication are error free, but nothing happens because they're talking past each other. Lucky issue 3000! @ellislau Thanks for reporting the problem. Your analysis was spot on. Here's what it looks like on my system:
Note that the display server is listening on TCP port 8461 while the client is connected to UDP port 8461, which, of course, isn't the same thing at all. I put PR #4162 up with a tested fix which works for me. @ellislau I suspect you had the same fix. If you state your suggestion in the form of a PR, that'd probably get things fixed quicker. The project operates with pretty much a skeleton crew, so every little contribution helps. |
Force TCP v4 for socket to ScrollView server. Fixes #3000
Environment
Current Behavior:
When using the parameter
inter
orinteractive_display_mode
, the application hangs.Expected Behavior:
The debugger viewer window should open.
Suggested Fix:
The issue seems to be that ScrollView uses java.net.ServerSocket which always uses TCP, whereas the SVNetwork logic in svutil.cpp may look for either a TCP or UDP socket. In my case, it was looking for a UDP socket and was not able to successfully connect. Tentatively, it seems that passing an addrinfo
hints
object that setsai_protocol
to IPPROTO_TCP was sufficient to work around the problem (https://www.man7.org/linux/man-pages/man3/getaddrinfo.3.html).The text was updated successfully, but these errors were encountered: