Sending data to a websocket connection should be controlled by the signals bytesWritten() and encryptedBytesWritten() instead of assuming that all the data was sent when send() is called.
I agree. And check for the result of bytesToWrite() and encryptedBytesToWrite() to keep the sum of both under a certain limit. See similar code in QHttpNetworkConnectionChannel::sendRequest().
Created attachment 47961 [details] Patch v1 Address the comments 14 and 15 from https://bugs.webkit.org/show_bug.cgi?id=34180.
Committed r54279: <http://trac.webkit.org/changeset/54279>
Created attachment 48043 [details] Revert previous patch The previous fix for this bug was a misunderstanding, and added un-necessary buffering. This patch is to revert the previous one, until a solution is found.
Reverted in r54298: <http://trac.webkit.org/changeset/54298>
Please follow the QtWebKit bug reporting guidelines when reporting bugs. See http://trac.webkit.org/wiki/QtWebKitBugs Specifically: - The 'QtWebKit' component should be used for bugs/features in the public QtWebKit API layer, not to signify that the bug is specific to the Qt port of WebKit http://trac.webkit.org/wiki/QtWebKitBugs#Component
WebSockets implementation changed quite a lot since. I do not plan to make these changes.