فهرست منبع

Handle NULL in global.var_dump().

C. Scott Ananian 11 سال پیش
والد
کامیت
c725a80674
1فایلهای تغییر یافته به همراه10 افزوده شده و 4 حذف شده
  1. 10 4
      v8js_methods.cc

+ 10 - 4
v8js_methods.cc

@@ -57,14 +57,20 @@ V8JS_METHOD(print) /* {{{ */
 
 static void _php_v8js_dumper(v8::Local<v8::Value> var, int level TSRMLS_DC) /* {{{ */
 {
-	v8::String::Utf8Value str(var->ToDetailString());
-	const char *valstr = ToCString(str);
-	size_t valstr_len = (valstr) ? strlen(valstr) : 0;
-
 	if (level > 1) {
 		php_printf("%*c", (level - 1) * 2, ' ');
 	}
 
+	if (var->IsNull())
+	{
+		php_printf("NULL\n");
+		return;
+	}
+
+	v8::String::Utf8Value str(var->ToDetailString());
+	const char *valstr = ToCString(str);
+	size_t valstr_len = (valstr) ? strlen(valstr) : 0;
+
 	if (var->IsString())
 	{
 		php_printf("string(%zu) \"%s\"\n", valstr_len, valstr);