Go to file
keuchel@chromium.org 666c4be29f Reapply r9673 "Scope tree serialization and ScopeIterator cleanup."
This also includes the two fixes from r9674 and r9675. Here's the diff
to the previous CL.

 --- a/src/runtime.cc
 +++ b/src/runtime.cc
 @@ -11133,17 +11133,26 @@ class ScopeIterator {
        context_(Context::cast(frame->context())),
        nested_scope_chain_(4) {

 +    // Catch the case when the debugger stops in an internal function.
 +    Handle<SharedFunctionInfo> shared_info(function_->shared());
 +    if (shared_info->script() == isolate->heap()->undefined_value()) {
 +      if (shared_info->scope_info()->HasContext()) Next();
 +      return;
 +    }
 +
      // Check whether we are in global code or function code. If there is a stack
      // slot for .result then this function has been created for evaluating
      // global code and it is not a real function.
      // Checking for the existence of .result seems fragile, but the scope info
      // saved with the code object does not otherwise have that information.
 -    int index = function_->shared()->scope_info()->
 +    int index = shared_info->scope_info()->
          StackSlotIndex(isolate_->heap()->result_symbol());

      // Reparse the code and analyze the scopes.
      ZoneScope zone_scope(isolate, DELETE_ON_EXIT);
 -    Handle<SharedFunctionInfo> shared_info(function_->shared());
      Handle<Script> script(Script::cast(shared_info->script()));
      Scope* scope;
      if (index >= 0) {

Review URL: http://codereview.chromium.org/8344046

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9734 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 10:26:59 +00:00
benchmarks Revert inadvertent changes to the spinning balls tool. 2011-10-11 11:43:48 +00:00
build Add presubmit=no and werror=no flags to Makefile 2011-10-06 11:08:41 +00:00
include Make MSVS happy with ExternalAsciiStringResourceImpl 2011-09-28 11:01:17 +00:00
preparser Ignore flags with arguments in preparser-process. 2011-10-14 07:34:45 +00:00
samples Fix presubmit errors caused by updated depot tools 2011-09-08 19:57:14 +00:00
src Reapply r9673 "Scope tree serialization and ScopeIterator cleanup." 2011-10-21 10:26:59 +00:00
test Reapply r9673 "Scope tree serialization and ScopeIterator cleanup." 2011-10-21 10:26:59 +00:00
tools Change type=settings to type=none for gyp targets 2011-10-13 07:30:54 +00:00
.gitignore Add *.so to .gitignore. 2011-09-07 21:09:13 +00:00
AUTHORS Debugger: fix stepping next with trycatch recursion 2011-09-13 14:38:39 +00:00
ChangeLog Preparing push to trunk for 3.7.0 2011-10-13 09:40:55 +00:00
LICENSE Fix the license info to correctly state Copyright "the V8 project 2011-01-19 09:20:18 +00:00
LICENSE.strongtalk Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
LICENSE.v8 Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
LICENSE.valgrind Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
Makefile Add presubmit=no and werror=no flags to Makefile 2011-10-06 11:08:41 +00:00
SConstruct Allow snapshots to be generated without using vfp3 code on arm. 2011-08-10 11:14:32 +00:00