History

hook up the WebSocket error event directly

Thijs Wenker committed 11 years ago

Commit d84cf181 parent 0e255f42 files · +10 −7Browse files

Showing the changes to libraries/script-engine/src/WebSocketClass.cpp (1 of 2 files). Show all

Unified · Split

libraries/script-engine/src/WebSocketClass.cpp+9−7
@@ -34,6 +34,8 @@ void WebSocketClass::initialize() { · 33 unmodified lines
3434 connect(_webSocket, &QWebSocket::disconnected, this, &WebSocketClass::handleOnClose);
3535 connect(_webSocket, &QWebSocket::textMessageReceived, this, &WebSocketClass::handleOnMessage);
3636 connect(_webSocket, &QWebSocket::connected, this, &WebSocketClass::handleOnOpen);
37+ connect(_webSocket, static_cast<void(QWebSocket::*)(QAbstractSocket::SocketError)>(&QWebSocket::error), this,
38+ &WebSocketClass::handleOnError);
3739 _binaryType = QStringLiteral("blob");
3840 }
3941
@@ -66,13 +68,7 @@ void WebSocketClass::close(QWebSocketProtocol::CloseCode closeCode, QString reas · 26 unmodified lines
6668 }
6769
6870 void WebSocketClass::handleOnClose() {
69− bool hasError = false;
70− if (_webSocket->error() != QAbstractSocket::UnknownSocketError) {
71− hasError = true;
72− if (_onErrorEvent.isFunction()) {
73− _onErrorEvent.call();
74− }
75− }
71+ bool hasError = (_webSocket->error() != QAbstractSocket::UnknownSocketError);
7672 if (_onCloseEvent.isFunction()) {
7773 QScriptValueList args;
7874 QScriptValue arg = _engine->newObject();
@@ -84,6 +80,12 @@ void WebSocketClass::handleOnClose() { · 5 unmodified lines
8480 }
8581 }
8682
83+void WebSocketClass::handleOnError(QAbstractSocket::SocketError error) {
84+ if (_onErrorEvent.isFunction()) {
85+ _onErrorEvent.call();
86+ }
87+}
88+
8789 void WebSocketClass::handleOnMessage(const QString& message) {
8890 if (_onMessageEvent.isFunction()) {
8991 QScriptValueList args;

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t