| Index: src/debug.cc
|
| diff --git a/src/debug.cc b/src/debug.cc
|
| index fb7e3370422308face20da263ab40b829d617000..adce92a2391713872ca57285440bd4da25c294da 100644
|
| --- a/src/debug.cc
|
| +++ b/src/debug.cc
|
| @@ -1106,13 +1106,12 @@ bool Debug::CheckBreakPoint(Handle<Object> break_point_object) {
|
|
|
| // Call HandleBreakPointx.
|
| bool caught_exception;
|
| - const int argc = 2;
|
| - Object** argv[argc] = {
|
| - break_id.location(),
|
| - reinterpret_cast<Object**>(break_point_object.location())
|
| - };
|
| + Handle<Object> argv[] = { break_id, break_point_object };
|
| Handle<Object> result = Execution::TryCall(check_break_point,
|
| - isolate_->js_builtins_object(), argc, argv, &caught_exception);
|
| + isolate_->js_builtins_object(),
|
| + ARRAY_SIZE(argv),
|
| + argv,
|
| + &caught_exception);
|
|
|
| // If exception or non boolean result handle as not triggered
|
| if (caught_exception || !result->IsBoolean()) {
|
| @@ -2102,7 +2101,8 @@ Debugger::~Debugger() {
|
|
|
|
|
| Handle<Object> Debugger::MakeJSObject(Vector<const char> constructor_name,
|
| - int argc, Object*** argv,
|
| + int argc,
|
| + Handle<Object> argv[],
|
| bool* caught_exception) {
|
| ASSERT(isolate_->context() == *isolate_->debug()->debug_context());
|
|
|
| @@ -2119,7 +2119,9 @@ Handle<Object> Debugger::MakeJSObject(Vector<const char> constructor_name,
|
| Handle<Object> js_object = Execution::TryCall(
|
| Handle<JSFunction>::cast(constructor),
|
| Handle<JSObject>(isolate_->debug()->debug_context()->global()),
|
| - argc, argv, caught_exception);
|
| + argc,
|
| + argv,
|
| + caught_exception);
|
| return js_object;
|
| }
|
|
|
| @@ -2128,10 +2130,11 @@ Handle<Object> Debugger::MakeExecutionState(bool* caught_exception) {
|
| // Create the execution state object.
|
| Handle<Object> break_id = isolate_->factory()->NewNumberFromInt(
|
| isolate_->debug()->break_id());
|
| - const int argc = 1;
|
| - Object** argv[argc] = { break_id.location() };
|
| + Handle<Object> argv[] = { break_id };
|
| return MakeJSObject(CStrVector("MakeExecutionState"),
|
| - argc, argv, caught_exception);
|
| + ARRAY_SIZE(argv),
|
| + argv,
|
| + caught_exception);
|
| }
|
|
|
|
|
| @@ -2139,11 +2142,9 @@ Handle<Object> Debugger::MakeBreakEvent(Handle<Object> exec_state,
|
| Handle<Object> break_points_hit,
|
| bool* caught_exception) {
|
| // Create the new break event object.
|
| - const int argc = 2;
|
| - Object** argv[argc] = { exec_state.location(),
|
| - break_points_hit.location() };
|
| + Handle<Object> argv[] = { exec_state, break_points_hit };
|
| return MakeJSObject(CStrVector("MakeBreakEvent"),
|
| - argc,
|
| + ARRAY_SIZE(argv),
|
| argv,
|
| caught_exception);
|
| }
|
| @@ -2155,23 +2156,25 @@ Handle<Object> Debugger::MakeExceptionEvent(Handle<Object> exec_state,
|
| bool* caught_exception) {
|
| Factory* factory = isolate_->factory();
|
| // Create the new exception event object.
|
| - const int argc = 3;
|
| - Object** argv[argc] = { exec_state.location(),
|
| - exception.location(),
|
| - uncaught ? factory->true_value().location() :
|
| - factory->false_value().location()};
|
| + Handle<Object> argv[] = { exec_state,
|
| + exception,
|
| + uncaught ? factory->true_value()
|
| + : factory->false_value() };
|
| return MakeJSObject(CStrVector("MakeExceptionEvent"),
|
| - argc, argv, caught_exception);
|
| + ARRAY_SIZE(argv),
|
| + argv,
|
| + caught_exception);
|
| }
|
|
|
|
|
| Handle<Object> Debugger::MakeNewFunctionEvent(Handle<Object> function,
|
| bool* caught_exception) {
|
| // Create the new function event object.
|
| - const int argc = 1;
|
| - Object** argv[argc] = { function.location() };
|
| + Handle<Object> argv[] = { function };
|
| return MakeJSObject(CStrVector("MakeNewFunctionEvent"),
|
| - argc, argv, caught_exception);
|
| + ARRAY_SIZE(argv),
|
| + argv,
|
| + caught_exception);
|
| }
|
|
|
|
|
| @@ -2182,14 +2185,13 @@ Handle<Object> Debugger::MakeCompileEvent(Handle<Script> script,
|
| // Create the compile event object.
|
| Handle<Object> exec_state = MakeExecutionState(caught_exception);
|
| Handle<Object> script_wrapper = GetScriptWrapper(script);
|
| - const int argc = 3;
|
| - Object** argv[argc] = { exec_state.location(),
|
| - script_wrapper.location(),
|
| - before ? factory->true_value().location() :
|
| - factory->false_value().location() };
|
| + Handle<Object> argv[] = { exec_state,
|
| + script_wrapper,
|
| + before ? factory->true_value()
|
| + : factory->false_value() };
|
|
|
| return MakeJSObject(CStrVector("MakeCompileEvent"),
|
| - argc,
|
| + ARRAY_SIZE(argv),
|
| argv,
|
| caught_exception);
|
| }
|
| @@ -2200,11 +2202,10 @@ Handle<Object> Debugger::MakeScriptCollectedEvent(int id,
|
| // Create the script collected event object.
|
| Handle<Object> exec_state = MakeExecutionState(caught_exception);
|
| Handle<Object> id_object = Handle<Smi>(Smi::FromInt(id));
|
| - const int argc = 2;
|
| - Object** argv[argc] = { exec_state.location(), id_object.location() };
|
| + Handle<Object> argv[] = { exec_state, id_object };
|
|
|
| return MakeJSObject(CStrVector("MakeScriptCollectedEvent"),
|
| - argc,
|
| + ARRAY_SIZE(argv),
|
| argv,
|
| caught_exception);
|
| }
|
| @@ -2355,11 +2356,12 @@ void Debugger::OnAfterCompile(Handle<Script> script,
|
|
|
| // Call UpdateScriptBreakPoints expect no exceptions.
|
| bool caught_exception;
|
| - const int argc = 1;
|
| - Object** argv[argc] = { reinterpret_cast<Object**>(wrapper.location()) };
|
| + Handle<Object> argv[] = { wrapper };
|
| Execution::TryCall(Handle<JSFunction>::cast(update_script_break_points),
|
| - Isolate::Current()->js_builtins_object(), argc, argv,
|
| - &caught_exception);
|
| + Isolate::Current()->js_builtins_object(),
|
| + ARRAY_SIZE(argv),
|
| + argv,
|
| + &caught_exception);
|
| if (caught_exception) {
|
| return;
|
| }
|
| @@ -2490,13 +2492,16 @@ void Debugger::CallJSEventCallback(v8::DebugEvent event,
|
| Handle<JSFunction> fun(Handle<JSFunction>::cast(event_listener_));
|
|
|
| // Invoke the JavaScript debug event listener.
|
| - const int argc = 4;
|
| - Object** argv[argc] = { Handle<Object>(Smi::FromInt(event)).location(),
|
| - exec_state.location(),
|
| - Handle<Object>::cast(event_data).location(),
|
| - event_listener_data_.location() };
|
| + Handle<Object> argv[] = { Handle<Object>(Smi::FromInt(event)),
|
| + exec_state,
|
| + event_data,
|
| + event_listener_data_ };
|
| bool caught_exception;
|
| - Execution::TryCall(fun, isolate_->global(), argc, argv, &caught_exception);
|
| + Execution::TryCall(fun,
|
| + isolate_->global(),
|
| + ARRAY_SIZE(argv),
|
| + argv,
|
| + &caught_exception);
|
| // Silently ignore exceptions from debug event listeners.
|
| }
|
|
|
| @@ -2865,12 +2870,11 @@ Handle<Object> Debugger::Call(Handle<JSFunction> fun,
|
| return isolate_->factory()->undefined_value();
|
| }
|
|
|
| - static const int kArgc = 2;
|
| - Object** argv[kArgc] = { exec_state.location(), data.location() };
|
| + Handle<Object> argv[] = { exec_state, data };
|
| Handle<Object> result = Execution::Call(
|
| fun,
|
| Handle<Object>(isolate_->debug()->debug_context_->global_proxy()),
|
| - kArgc,
|
| + ARRAY_SIZE(argv),
|
| argv,
|
| pending_exception);
|
| return result;
|
|
|