Fixed segfault on converting none string ref to char.
authorDaniel Carl <danielcarl@gmx.de>
Sun, 12 Jan 2014 23:05:38 +0000 (00:05 +0100)
committerDaniel Carl <danielcarl@gmx.de>
Sun, 12 Jan 2014 23:22:02 +0000 (00:22 +0100)
src/js.c

index 458fdb5..cd8e6a0 100644 (file)
--- a/src/js.c
+++ b/src/js.c
@@ -130,8 +130,15 @@ char* js_object_call_function(JSContextRef ctx, JSObjectRef obj,
 char* js_ref_to_string(JSContextRef ctx, JSValueRef ref)
 {
     char *string;
-    JSStringRef str_ref = JSValueToStringCopy(ctx, ref, NULL);
-    size_t len          = JSStringGetMaximumUTF8CStringSize(str_ref);
+    size_t len;
+    JSStringRef str_ref;
+
+    if (!ref) {
+        return NULL;
+    }
+
+    str_ref = JSValueToStringCopy(ctx, ref, NULL);
+    len     = JSStringGetMaximumUTF8CStringSize(str_ref);
 
     string = g_new0(char, len);
     JSStringGetUTF8CString(str_ref, string, len);