https://bugs.webkit.org/show_bug.cgi?id=119900
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 21 Aug 2013 23:34:39 +0000 (23:34 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 21 Aug 2013 23:34:39 +0000 (23:34 +0000)
commit5409f2399a6b0d493bd7bf3179a347ac11195f89
tree23b125c7efa97b66331b81654f765927de47ef84
parent64f11b7538917b5fb1274ae88c38f70e96688fd7
https://bugs.webkit.org/show_bug.cgi?id=119900
Exception in global setter doesn't unwind correctly

Patch by Yi Shen <max.hong.shen@gmail.com> on 2013-08-21
Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Call VM_THROW_EXCEPTION_AT_END in op_put_to_scope if the setter throws exception.

* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):

LayoutTests:

Add test for calling global setter which throws exception.

* fast/js/script-tests/throw-exception-in-global-setter.js: Added.
(g):
* fast/js/throw-exception-in-global-setter-expected.txt: Added.
* fast/js/throw-exception-in-global-setter.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@154429 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/fast/js/script-tests/throw-exception-in-global-setter.js [new file with mode: 0644]
LayoutTests/fast/js/throw-exception-in-global-setter-expected.txt [new file with mode: 0644]
LayoutTests/fast/js/throw-exception-in-global-setter.html [new file with mode: 0644]
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/jit/JITStubs.cpp