Browse Source

Update v8js_methods.cc

* require() method: check when Module Loader returns an array (ex: require on a .json file) and map to array to JavaScript
Christiano Becker 6 years ago
parent
commit
d36aa6c9d5
1 changed files with 9 additions and 0 deletions
  1. 9 0
      v8js_methods.cc

+ 9 - 0
v8js_methods.cc

@@ -484,6 +484,15 @@ V8JS_METHOD(require)
 
 		return;
 	}
+	
+	if(Z_TYPE(module_code) == IS_ARRAY) {
+		v8::Local<v8::Value> newarray = zval_to_v8js(&module_code, isolate);
+		c->modules_loaded[normalised_module_id].Reset(isolate, newarray);
+		info.GetReturnValue().Set(newarray);
+
+		efree(normalised_path);
+		return;
+        }
 
 	if(Z_TYPE(module_code) == IS_OBJECT) {
 		v8::Local<v8::Object> newobj = zval_to_v8js(&module_code, isolate)->ToObject(isolate->GetEnteredContext()).ToLocalChecked();