Chromium Code Reviews| Index: src/accessors.cc |
| diff --git a/src/accessors.cc b/src/accessors.cc |
| index 662a9e126b04b1bad9489ddb468c09666436eff1..9b61608db2fed8062146ccd29b5a8b389a43f57c 100644 |
| --- a/src/accessors.cc |
| +++ b/src/accessors.cc |
| @@ -787,6 +787,40 @@ Handle<AccessorInfo> Accessors::ScriptSourceMappingUrlInfo( |
| // |
| +// Accessors::ScriptIsDebuggerScript |
| +// |
| + |
| + |
| +void Accessors::ScriptIsDebuggerScriptGetter( |
|
Yang
2015/01/28 09:47:30
Why is this necessary? I don't see it for the is_s
kozy
2015/01/29 10:52:55
We use this variable in our DebuggerScript.js in b
|
| + v8::Local<v8::Name> name, const v8::PropertyCallbackInfo<v8::Value>& info) { |
| + i::Isolate* isolate = reinterpret_cast<i::Isolate*>(info.GetIsolate()); |
| + DisallowHeapAllocation no_allocation; |
| + HandleScope scope(isolate); |
| + Object* object = *Utils::OpenHandle(*info.This()); |
| + bool is_debugger_script = |
| + Script::cast(JSValue::cast(object)->value())->is_debugger_script(); |
| + Object* res = *isolate->factory()->ToBoolean(is_debugger_script); |
| + info.GetReturnValue().Set(Utils::ToLocal(Handle<Object>(res, isolate))); |
| +} |
| + |
| + |
| +void Accessors::ScriptIsDebuggerScriptSetter( |
| + v8::Local<v8::Name> name, v8::Local<v8::Value> value, |
| + const v8::PropertyCallbackInfo<void>& info) { |
| + UNREACHABLE(); |
| +} |
| + |
| + |
| +Handle<AccessorInfo> Accessors::ScriptIsDebuggerScriptInfo( |
| + Isolate* isolate, PropertyAttributes attributes) { |
| + Handle<String> name(isolate->factory()->InternalizeOneByteString( |
| + STATIC_CHAR_VECTOR("is_debugger_script"))); |
| + return MakeAccessor(isolate, name, &ScriptIsDebuggerScriptGetter, |
| + &ScriptIsDebuggerScriptSetter, attributes); |
| +} |
| + |
| + |
| +// |
| // Accessors::ScriptGetContextData |
| // |