Changeset 30235 in webkit for trunk/JavaScriptCore
- Timestamp:
- Feb 14, 2008, 3:29:51 PM (17 years ago)
- Location:
- trunk/JavaScriptCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/ChangeLog
r30192 r30235 1 2008-02-14 Geoffrey Garen <[email protected]> 2 3 Reviewed by Sam Weinig. 4 5 Fixed <rdar://problem/5737835> nee http://bugs.webkit.org/show_bug.cgi?id=17329 6 Crash in JSGlobalObject::popActivation when inserting hyperlink in Wordpress (17329) 7 8 Don't reset the "activations" stack in JSGlobalObject::reset, since we 9 might be executing a script during the call to reset, and the script 10 needs to safely run to completion. 11 12 Instead, initialize the "activations" stack when the global object is 13 created, and subsequently rely on pushing and popping during normal 14 execution to maintain the stack's state. 15 16 * kjs/JSGlobalObject.cpp: 17 (KJS::JSGlobalObject::init): 18 (KJS::JSGlobalObject::reset): 19 1 20 2008-02-13 Bernhard Rosenkraenzer <[email protected]> 2 21 -
trunk/JavaScriptCore/kjs/JSGlobalObject.cpp
r30102 r30235 140 140 d()->debugger = 0; 141 141 142 d()->activations = 0; 143 142 ActivationStackNode* newStackNode = new ActivationStackNode; 143 newStackNode->prev = 0; 144 d()->activations = newStackNode; 145 d()->activationCount = 0; 146 144 147 reset(prototype()); 145 148 } … … 215 218 216 219 ExecState* exec = &d()->globalExec; 217 218 deleteActivationStack();219 ActivationStackNode* newStackNode = new ActivationStackNode;220 newStackNode->prev = 0;221 d()->activations = newStackNode;222 d()->activationCount = 0;223 220 224 221 // Prototypes … … 531 528 if (!d()->activationCount) { 532 529 ActivationStackNode* prev = d()->activations->prev; 530 ASSERT(prev); 533 531 delete d()->activations; 534 532 d()->activations = prev;
Note:
See TracChangeset
for help on using the changeset viewer.