From 287d7e67a30f801f5c59a7716882f47fd4f04dbb Mon Sep 17 00:00:00 2001 From: Brian Carlson Date: Mon, 15 Jul 2013 09:22:37 -0500 Subject: [PATCH] Handle NULL return from MallocCString --- src/binding.cc | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/binding.cc b/src/binding.cc index ea262d06..7a2364be 100644 --- a/src/binding.cc +++ b/src/binding.cc @@ -140,6 +140,11 @@ public: Connection *self = ObjectWrap::Unwrap(args.This()); char* inputStr = MallocCString(args[0]); + + if(!inputStr) { + THROW("Unable to allocate memory for a string in EscapeIdentifier.") + } + char* escapedStr = self->EscapeIdentifier(inputStr); free(inputStr); @@ -161,6 +166,11 @@ public: Connection *self = ObjectWrap::Unwrap(args.This()); char* inputStr = MallocCString(args[0]); + + if(!inputStr) { + THROW("Unable to allocate memory for a string in EscapeIdentifier.") + } + char* escapedStr = self->EscapeLiteral(inputStr); free(inputStr); @@ -320,7 +330,7 @@ public: Connection *self = ObjectWrap::Unwrap(args.This()); //TODO handle errors in some way if (args.Length() < 1 && !Buffer::HasInstance(args[0])) { - THROW("SendCopyFromChunk requires 1 Buffer argument"); + THROW("SendCopyFromChunk requires 1 Buffer argument"); } self->SendCopyFromChunk(args[0]->ToObject()); return Undefined();