For example, if the HTML5 client doesn't start and there is an error in the browser console the user will still only see "The HTML5 client is loading..." while it in fact isn't. We should visually indicate that something went wrong in these cases.
Doesn't work if the crash is after UI.connect() has been called.
Fixed now.
Doesn't work properly when in a handler for incoming data. Managed to provoke this crash: recv_message, caught exception: name: ReferenceError message: fooo is not defined UI.updateState@https://10.47.1.240:300/include/ui.js:716:1 RFB.prototype._updateState@https://10.47.1.240:300/include/rfb.js:544:17 RFB.prototype._negotiate_std_vnc_auth@https://10.47.1.240:300/include/rfb.js:759:17 RFB.prototype._negotiate_authentication@https://10.47.1.240:300/include/rfb.js:870:1 RFB.prototype._init_msg@https://10.47.1.240:300/include/rfb.js:1031:1 RFB.prototype._negotiate_security@https://10.47.1.240:300/include/rfb.js:731:20 RFB.prototype._init_msg@https://10.47.1.240:300/include/rfb.js:1028:1 RFB.prototype._handle_message@https://10.47.1.240:300/include/rfb.js:580:21 Websock.prototype._recv_message@https://10.47.1.240:300/include/websock.js:344:21
It is also might need some more layout improvements. You can't clearly tell what's the error message and what's the background behind it.
The error message is also not seen when the crash happens with the canvas visible.
A normal terminated session now also results in the message "Failed to connect.".
r30842 fixes comment #7 r30845 fixes comment #8 and comment #9 r30846 fixes comment #10
Everything seems to work fine now.