Ignore:
Timestamp:
Jan 14, 2008, 11:02:46 AM (17 years ago)
Author:
Adam Roben
Message:

Fix Bug 16871: Crash when loading apple.com/startpage

<http://bugs.webkit.org/show_bug.cgi?id=16871>
<rdar://problem/5686670>

Patch written by Darin, reviewed by me.

  • kjs/ExecState.cpp: (KJS::ExecState::mark): Call ActivationImp::markChildren if our m_activation is on the stack. This is what ScopeChain::mark also does, but apparently in some cases it's possible for an ExecState's ActivationImp to not be in any ScopeChain.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/kjs/ExecState.cpp

    r29425 r29474  
    128128    for (ExecState* exec = this; exec; exec = exec->m_callingExec)
    129129        exec->m_scopeChain.mark();
     130
     131    // FIXME: It is surprising that this code is necessary, since at first
     132    // glance it seems that all ActivationImps should be in a ScopeChain.
     133    // However, <http://bugs.webkit.org/show_bug.cgi?id=16871> proves that is
     134    // not the case.
     135    if (m_activation && m_activation->isOnStack())
     136        m_activation->markChildren();
    130137}
    131138
Note: See TracChangeset for help on using the changeset viewer.