diff --git a/lib/client.js b/lib/client.js index 1627d21..bbf7211 100644 --- a/lib/client.js +++ b/lib/client.js @@ -29,7 +29,7 @@ Client.prototype.setSocket = function(socket) { while (true) { parsed = parsePacket(incomingBuffer, self.isServer); if (! parsed) break; - if (typeof parsed.error !== "undefined") end(parsed.error); + if (parsed.error) this.end(parsed.error); packet = parsed.results; incomingBuffer = incomingBuffer.slice(parsed.size); self.emit(packet.id, packet); diff --git a/lib/protocol.js b/lib/protocol.js index 70733ac..58fd690 100644 --- a/lib/protocol.js +++ b/lib/protocol.js @@ -729,13 +729,13 @@ function readEntityMetadata(buffer, offset) { dataType = types[typeName]; if (!dataType) { return { - error: "unrecognized entity metadata type " + type + error: new Error("unrecognized entity metadata type " + type) } } reader = dataType[0]; if (!reader) { return { - error: "missing reader for entity metadata type " + type + error: new Error("missing reader for entity metadata type " + type) } } results = reader(buffer, cursor); @@ -818,7 +818,7 @@ function readMapChunkBulk (buffer, offset) { if (chunkColumnCount !== meta.length) { return { - error: "ChunkColumnCount different from length of meta" + error: new Error("ChunkColumnCount different from length of meta") } } @@ -1215,7 +1215,7 @@ function parsePacket(buffer, isServer) { var packetInfo = get(packetId, isServer); if (packetInfo == null) { return { - error: "Unrecognized packetId: " + packetId + error: new Error("Unrecognized packetId: " + packetId) } } var i, fieldInfo, read, readResults; @@ -1224,15 +1224,15 @@ function parsePacket(buffer, isServer) { read = types[fieldInfo.type][0]; if (!read) { return { - error: "missing reader for data type: " + fieldInfo.type + error: new Error("missing reader for data type: " + fieldInfo.type) } } readResults = read(buffer, size); if (readResults) { // if readResults.error is undef, error stays undef'd - if (typeof readResults.error !== "undefined") { + if (readResults.error) { return { - error: readResults.error + error: new Error("reader failed : " + readResults.error) } } results[fieldInfo.name] = readResults.value;