Index: src/v8natives.js |
diff --git a/src/v8natives.js b/src/v8natives.js |
index 34c35031b2601dd4c1ef614c877668d307502569..10a0566c295cb4d0dc6ffd3f171141ef97787fed 100644 |
--- a/src/v8natives.js |
+++ b/src/v8natives.js |
@@ -1779,7 +1779,9 @@ function FunctionConstructor(arg1) { // length == 1 |
var global_proxy = %GlobalProxy(FunctionConstructor); |
// Compile the string in the constructor and not a helper so that errors |
// appear to come from here. |
- var f = %_CallFunction(global_proxy, %CompileString(source, true)); |
+ var f = %CompileString(source, true); |
+ if (!IS_FUNCTION(f)) return f; |
+ f = %_CallFunction(global_proxy, f); |
%FunctionMarkNameShouldPrintAsAnonymous(f); |
return f; |
} |