Activation tear-off neglects to copy the callee and scope chain, leading to crashes...
authorfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 2 Apr 2012 21:53:12 +0000 (21:53 +0000)
committerfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 2 Apr 2012 21:53:12 +0000 (21:53 +0000)
commitd6cbe004bb2bfdee14098ecf71fab1cd849ae26f
tree4c8c1124e74381eec7fe41a3cb2f3921186bee84
parentfba5bcd3c737c4d18a9aec6e85c3a7fecfcc6cab
Activation tear-off neglects to copy the callee and scope chain, leading to crashes if we
try to create an arguments object from the activation
https://bugs.webkit.org/show_bug.cgi?id=82947
<rdar://problem/11058598>

Reviewed by Gavin Barraclough.

We now copy the entire call frame header just to be sure. This is mostly perf-netural,
except for a 3.7% slow-down in V8/earley.

* runtime/JSActivation.cpp:
(JSC::JSActivation::visitChildren):
* runtime/JSActivation.h:
(JSC::JSActivation::tearOff):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112947 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/runtime/JSActivation.cpp
Source/JavaScriptCore/runtime/JSActivation.h