Changeset 163664 in webkit
- Timestamp:
- Feb 7, 2014 4:46:28 PM (10 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/API/JSContextRef.cpp
r163595 r163664 58 58 { 59 59 initializeThreading(); 60 VM* vm = VM::createContextGroup().leakRef(); 61 vm->ignoreStackLimit(); 62 return toRef(vm); 60 return toRef(VM::createContextGroup().leakRef()); 63 61 } 64 62 … … 132 130 initializeThreading(); 133 131 134 RefPtr<VM> vm; 135 if (group) 136 vm = PassRefPtr<VM>(toJS(group)); 137 else { 138 vm = VM::createContextGroup(); 139 vm->ignoreStackLimit(); 140 } 132 RefPtr<VM> vm = group ? PassRefPtr<VM>(toJS(group)) : VM::createContextGroup(); 141 133 142 134 APIEntryShim entryShim(vm.get(), false); -
trunk/Source/JavaScriptCore/API/tests/testapi.js
r163595 r163664 243 243 244 244 shouldBe("undefined instanceof MyObject", false); 245 /*246 245 EvilExceptionObject.hasInstance = function f() { return f(); }; 247 246 EvilExceptionObject.__proto__ = undefined; … … 254 253 EvilExceptionObject.toStringExplicit = function f() { return f(); } 255 254 shouldThrow("String(EvilExceptionObject)"); 256 */257 255 258 256 shouldBe("EmptyObject", "[object CallbackObject]"); -
trunk/Source/JavaScriptCore/ChangeLog
r163661 r163664 1 2014-02-07 Mark Lam <mark.lam@apple.com> 2 3 Revert workaround committed in http://trac.webkit.org/r163595. 4 <https://webkit.org/b/128408> 5 6 Reviewed by Geoffrey Garen. 7 8 Now that we have fixed the bugs in JSLock's stack limit adjusments 9 in https://bugs.webkit.org/show_bug.cgi?id=128406, we can revert the 10 workaround in r163595. 11 12 * API/JSContextRef.cpp: 13 (JSContextGroupCreate): 14 (JSGlobalContextCreateInGroup): 15 * API/tests/testapi.js: 16 * runtime/VM.cpp: 17 (JSC::VM::VM): 18 (JSC::VM::updateStackLimitWithReservedZoneSize): 19 * runtime/VM.h: 20 1 21 2014-02-07 Mark Lam <mark.lam@apple.com> 2 22 -
trunk/Source/JavaScriptCore/runtime/VM.cpp
r163595 r163664 220 220 , m_initializingObjectClass(0) 221 221 #endif 222 , m_ignoreStackLimit(false)223 222 , m_stackLimit(0) 224 223 #if ENABLE(LLINT_C_LOOP) … … 740 739 size_t VM::updateStackLimitWithReservedZoneSize(size_t reservedZoneSize) 741 740 { 742 if (m_ignoreStackLimit) {743 setStackLimit(0);744 return 0;745 }746 747 741 size_t oldReservedZoneSize = m_reservedZoneSize; 748 742 m_reservedZoneSize = reservedZoneSize; -
trunk/Source/JavaScriptCore/runtime/VM.h
r163595 r163664 388 388 void* stackLimit() { return m_stackLimit; } 389 389 390 void ignoreStackLimit() { m_ignoreStackLimit = true; }391 392 390 bool isSafeToRecurse(size_t neededStackInBytes = 0) const 393 391 { … … 524 522 const ClassInfo* m_initializingObjectClass; 525 523 #endif 526 bool m_ignoreStackLimit;527 524 size_t m_reservedZoneSize; 528 525 #if ENABLE(LLINT_C_LOOP)
Note: See TracChangeset
for help on using the changeset viewer.