diff --git a/src/library_websocket.js b/src/library_websocket.js index 4ea12baaa66e1..be2edcd3f8e67 100644 --- a/src/library_websocket.js +++ b/src/library_websocket.js @@ -155,7 +155,7 @@ var LibraryWebSocket = { dbg(`websocket event "open": socketId=${socketId},userData=${userData},callbackFunc=${callbackFunc})`); #endif HEAPU32[WS.socketEvent>>2] = socketId; - {{{ makeDynCall('iiii', 'callbackFunc') }}}(0/*TODO*/, WS.socketEvent, userData); + {{{ makeDynCall('iipp', 'callbackFunc') }}}(0/*TODO*/, WS.socketEvent, userData); } return {{{ cDefs.EMSCRIPTEN_RESULT_SUCCESS }}}; }, @@ -181,7 +181,7 @@ var LibraryWebSocket = { dbg(`websocket event "error": socketId=${socketId},userData=${userData},callbackFunc=${callbackFunc})`); #endif HEAPU32[WS.socketEvent>>2] = socketId; - {{{ makeDynCall('iiii', 'callbackFunc') }}}(0/*TODO*/, WS.socketEvent, userData); + {{{ makeDynCall('iipp', 'callbackFunc') }}}(0/*TODO*/, WS.socketEvent, userData); } return {{{ cDefs.EMSCRIPTEN_RESULT_SUCCESS }}}; }, @@ -210,7 +210,7 @@ var LibraryWebSocket = { HEAPU32[(WS.socketEvent+4)>>2] = e.wasClean; HEAPU32[(WS.socketEvent+8)>>2] = e.code; stringToUTF8(e.reason, WS.socketEvent+10, 512); - {{{ makeDynCall('iiii', 'callbackFunc') }}}(0/*TODO*/, WS.socketEvent, userData); + {{{ makeDynCall('iipp', 'callbackFunc') }}}(0/*TODO*/, WS.socketEvent, userData); } return {{{ cDefs.EMSCRIPTEN_RESULT_SUCCESS }}}; }, @@ -262,7 +262,7 @@ var LibraryWebSocket = { } HEAPU32[(WS.socketEvent+4)>>2] = buf; HEAPU32[(WS.socketEvent+8)>>2] = len; - {{{ makeDynCall('iiii', 'callbackFunc') }}}(0/*TODO*/, WS.socketEvent, userData); + {{{ makeDynCall('iipp', 'callbackFunc') }}}(0/*TODO*/, WS.socketEvent, userData); _free(buf); } return {{{ cDefs.EMSCRIPTEN_RESULT_SUCCESS }}}; diff --git a/test/test_sockets.py b/test/test_sockets.py index 5ecc0d4a329a0..f13f269cffc27 100644 --- a/test/test_sockets.py +++ b/test/test_sockets.py @@ -349,3 +349,11 @@ def test_posix_proxy_sockets(self): with PythonTcpEchoServerProcess('7777'): # Build and run the TCP echo client program with Emscripten self.btest_exit('websocket/tcp_echo_client.c', args=['-lwebsocket', '-sPROXY_POSIX_SOCKETS', '-pthread', '-sPROXY_TO_PTHREAD']) + + +class sockets64(sockets): + def setUp(self): + super().setUp() + self.set_setting('MEMORY64') + self.emcc_args.append('-Wno-experimental') + self.require_wasm64()