Half the time when logging out from a ThinLinc session open in the HTML5 client we get the following error:
Issue found on Firefox 38 on Fedora 20. It does not happen everytime I log out, could be some sort of race?
Can not reproduce in Firefox 38 on Windows 10 nor in Google Chrome on Windows or Linux.
Possibly related to: https://bugzilla.mozilla.org/show_bug.cgi?id=712329
I have seen this issue for a long time (it has probably always been here) but note that since the changes in bug 5603 this bug is now shown to the users.
Got it today on Fedora 23 with Firefox 44.
Since the implementation of continuous updates and fences done on bug 5814 we now get this error message a lot more frequently.
Commit r31514 improved the consistency in how we send data on the websocket. It also added support for receiving Fence messages. A side effect of these changes is that we are now getting the "NS_ERROR_NOT_CONNECTED"-error more often.
The error message appears since queued-up actions are still trying to use the websocket even after it is closed.
In ThinLinc 4.6.0 (tested on castro), we see this error quite rarely. This is due to the fact that the message queue has to contain a message that provokes an action on the websocket that isn't executed before we have closed the connection to the socket.
In ThinLinc 4.7.0rc1, this error message ALWAYS pops up when logging out using a desktop environment that has some sort of graphical effect upon logout. Examples of such DE's are Gnome 3 and Unity. The new server will be sending fence messages quite frequently, which in turn triggers a response from the HTML5 client. Since we are trying to send a response on a closing socket we trigger the error.
To consistently trigger this error, no matter the desktop environment, or the type of server-initiated disconnection:
In a terminal within the session -
* run any application that triggers graphical updates (glxgears for example)
* run tl-disconnect
Created attachment 751 [details]
Screenshot of the error
Moving from Future to '---' milestone for discussion since the error message is now extremely frequent and very visual. I believe this gives a very bad impression of the HTML5 client for all Firefox users. We should consider at least hiding the error message for ThinLinc 4.7.0 to spare headache for ThinLinc administrators and customers. A proper solution could wait until next release in my opinion.
I cannot provoke the error using the UI disconnect button. Only seen on server-initated disconnects.
Created attachment 802 [details]
Screenshot of the error
After changes done on bug 6132, the error now looks like this.
This error message is hidden for now, done on bug 6132. When solving this bug, revert commit r32426.
It seems Firefox has fixed this. We should remove the code and retest.
(In reply to comment #3)
Removed the workaround and re-tested following these instructions:
> To consistently trigger this error, no matter the desktop environment, or the
> type of server-initiated disconnection:
> In a terminal within the session -
> * run any application that triggers graphical updates (glxgears for example)
> * run tl-disconnect
I also ran youtube in the backround for extra provocation.
* Fedora 30 - Firefox 69
* Windows 10 - Firefox 70
* macOS 10 - Firefox 70
Could not provoke this error message neither as pop-up window nor as a console error. So it seems to work after removing the workaround.
I too tried to reproduce the error mutliple times now that our workaround is removed:
1. Running glxgears in the session
2. Running vncconfig -disconnect
3. No errors seen
Looks good, closing.