Browse Source

handle new IS_INDIRECT and IS_UNDEF in zval->js export

Stefan Siegl 9 years ago
parent
commit
8a3124ee2a
1 changed files with 8 additions and 1 deletions
  1. 8 1
      v8js_convert.cc

+ 8 - 1
v8js_convert.cc

@@ -105,6 +105,9 @@ v8::Handle<v8::Value> zval_to_v8js(zval *value, v8::Isolate *isolate TSRMLS_DC)
 	long v;
 	zend_class_entry *ce;
 
+	if(Z_TYPE_P(value) == IS_INDIRECT)
+		value = Z_INDIRECT_P(value);
+
 	switch (Z_TYPE_P(value))
 	{
 		case IS_ARRAY:
@@ -154,10 +157,14 @@ v8::Handle<v8::Value> zval_to_v8js(zval *value, v8::Isolate *isolate TSRMLS_DC)
 			jsValue = V8JS_FALSE();
 			break;
 
-		default:
 		case IS_NULL:
 			jsValue = V8JS_NULL;
 			break;
+
+		case IS_UNDEF:
+		default:
+			/* undefined -> return v8::Value left empty */
+			break;
 	}
 	return jsValue;
 }