| Index: extensions/renderer/module_system.cc
|
| diff --git a/extensions/renderer/module_system.cc b/extensions/renderer/module_system.cc
|
| index 1f337643476d06ad230eab1fb4949e61ec616a8f..f9e8d91df590065a82a31cf5725ab0aa320c1049 100644
|
| --- a/extensions/renderer/module_system.cc
|
| +++ b/extensions/renderer/module_system.cc
|
| @@ -552,7 +552,11 @@ v8::Handle<v8::String> ModuleSystem::WrapSource(v8::Handle<v8::String> source) {
|
| "(function(define, require, requireNative, requireAsync, exports, "
|
| "console, privates,"
|
| "$Array, $Function, $JSON, $Object, $RegExp, $String) {"
|
| - "'use strict';");
|
| + "'use strict';"
|
| + // Prevent extensions from overriding the Error constructor.
|
| + // Use window.Error instead of $Error to make sure that extensions can
|
| + // still use "instanceof Error" for exception handling.
|
| + "var Error = window.Error;");
|
| v8::Handle<v8::String> right = v8::String::NewFromUtf8(GetIsolate(), "\n})");
|
| return handle_scope.Escape(v8::Local<v8::String>(
|
| v8::String::Concat(left, v8::String::Concat(source, right))));
|
|
|