From f20f49388df3861f56aa8f5201786a70e2d0ec42 Mon Sep 17 00:00:00 2001 From: Amish Shah Date: Sun, 30 Apr 2017 11:40:16 +0100 Subject: [PATCH] Simplify data unpack logic --- src/client/websocket/WebSocketConnection.js | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/client/websocket/WebSocketConnection.js b/src/client/websocket/WebSocketConnection.js index 29de39775..392a10afb 100644 --- a/src/client/websocket/WebSocketConnection.js +++ b/src/client/websocket/WebSocketConnection.js @@ -159,15 +159,11 @@ class WebSocketConnection extends EventEmitter { * @returns {Object} */ unpack(data) { - if (erlpack && typeof data !== 'string') { - if (data instanceof ArrayBuffer) data = Buffer.from(new Uint8Array(data)); - return erlpack.unpack(data); - } else if (data instanceof ArrayBuffer) { - data = Buffer.from(data); - } - if (data instanceof Buffer) { - data = zlib.inflateSync(data).toString(); - } + if (data instanceof ArrayBuffer) data = Buffer.from(new Uint8Array(data)); + + if (erlpack && typeof data !== 'string') return erlpack.unpack(data); + else if (data instanceof Buffer) data = zlib.inflateSync(data).toString(); + return JSON.parse(data); }