diff options
Diffstat (limited to 'src/v8/0007-Allow-a-script-to-be-flagged-as-native.patch')
-rw-r--r-- | src/v8/0007-Allow-a-script-to-be-flagged-as-native.patch | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/v8/0007-Allow-a-script-to-be-flagged-as-native.patch b/src/v8/0007-Allow-a-script-to-be-flagged-as-native.patch new file mode 100644 index 0000000000..396d1f7add --- /dev/null +++ b/src/v8/0007-Allow-a-script-to-be-flagged-as-native.patch @@ -0,0 +1,46 @@ +From a1572a979803dda787be4a7095d5c37e926443a7 Mon Sep 17 00:00:00 2001 +From: Aaron Kennedy <aaron.kennedy@nokia.com> +Date: Fri, 9 Sep 2011 14:16:12 +1000 +Subject: [PATCH 07/11] Allow a script to be flagged as "native" + +Native scripts do not appear in backtraces, or in the source and +line number when exceptions are thrown from within them. This is +useful to be able to write code in JavaScript instead of C++ and +still have it appear sensibly to the user. +--- + include/v8.h | 5 +++-- + src/compiler.cc | 2 +- + 2 files changed, 4 insertions(+), 3 deletions(-) + +diff --git a/include/v8.h b/include/v8.h +index 6baf2b2..229ddbd 100644 +--- a/include/v8.h ++++ b/include/v8.h +@@ -588,8 +588,9 @@ class ScriptOrigin { + class V8EXPORT Script { + public: + enum CompileFlags { +- Default = 0x00, +- QmlMode = 0x01 ++ Default = 0x00, ++ QmlMode = 0x01, ++ NativeMode = 0x02 + }; + + /** +diff --git a/src/compiler.cc b/src/compiler.cc +index 596df4a..b760b71 100644 +--- a/src/compiler.cc ++++ b/src/compiler.cc +@@ -501,7 +501,7 @@ Handle<SharedFunctionInfo> Compiler::Compile(Handle<String> source, + + // Create a script object describing the script to be compiled. + Handle<Script> script = FACTORY->NewScript(source); +- if (natives == NATIVES_CODE) { ++ if (natives == NATIVES_CODE || compile_flags & v8::Script::NativeMode) { + script->set_type(Smi::FromInt(Script::TYPE_NATIVE)); + } + if (!script_name.is_null()) { +-- +1.7.4.4 + |