aboutsummaryrefslogtreecommitdiff
path: root/src/library.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/library.js')
-rw-r--r--src/library.js27
1 files changed, 25 insertions, 2 deletions
diff --git a/src/library.js b/src/library.js
index 261b4687..221da010 100644
--- a/src/library.js
+++ b/src/library.js
@@ -6456,14 +6456,27 @@ LibraryManager.library = {
info.bufferWrite = info.bufferRead = 0;
info.socket.onmessage = function (event) {
var data = event.data;
+#if SOCKET_DEBUG
+ Module.print(['onmessage', window.location, event.data, window.atob(data)]);
+#endif
if (typeof data == 'string') {
var binaryString = window.atob(data);
var len = binaryString.length;
+#if SOCKET_DEBUG
+ var out = [];
+#endif
for (var i = 0; i < len; i++) {
- info.buffer[info.bufferWrite++] = binaryString.charCodeAt(i);
+ var curr = binaryString.charCodeAt(i);
+ info.buffer[info.bufferWrite++] = curr;
+#if SOCKET_DEBUG
+ out.push(curr);
+#endif
if (info.bufferWrite == Sockets.BUFFER_SIZE) info.bufferWrite = 0;
if (info.bufferWrite == info.bufferRead) throw 'socket buffer overflow';
}
+#if SOCKET_DEBUG
+ Module.print(['onmessage data:', out]);
+#endif
} else {
console.log('binary!');
}
@@ -6509,6 +6522,9 @@ LibraryManager.library = {
len--;
ret++;
}
+#if SOCKET_DEBUG
+ Module.print('recv: ' + Array.prototype.slice.call(HEAPU8.subarray(buf-len, buf)));
+#endif
return ret;
},
@@ -6516,6 +6532,9 @@ LibraryManager.library = {
send: function(fd, buf, len, flags) {
var info = Sockets.fds[fd];
if (!info) return -1;
+#if SOCKET_DEBUG
+ Module.print('send: ' + Array.prototype.slice.call(HEAPU8.subarray(buf, buf+len)));
+#endif
info.sender(Pointer_stringify(buf, len));
return len;
},
@@ -6535,7 +6554,11 @@ LibraryManager.library = {
for (var i = 0; i < num; i++) {
var currNum = {{{ makeGetValue('msg', 'Sockets.msghdr_layout.msg_iov+8*i' + '+4', 'i32') }}};
if (!currNum) continue;
- data += Pointer_stringify({{{ makeGetValue('msg', 'Sockets.msghdr_layout.msg_iov+8*i', 'i8*') }}}, currNum);
+ var currBuf = {{{ makeGetValue('msg', 'Sockets.msghdr_layout.msg_iov+8*i', 'i8*') }}};
+#if SOCKET_DEBUG
+ Module.print('sendmsg part ' + i + ' : ' + Array.prototype.slice.call(HEAPU8.subarray(currBuf, currBuf+currNum)));
+#endif
+ data += Pointer_stringify(currBuf, currNum);
}
info.sender(data);
return data.length;