X-Git-Url: http://git.webkit.org/?p=WebKit-https.git;a=blobdiff_plain;f=JavaScriptCore%2FChangeLog;h=55ee52b343049236924951d0076a89e73e1de9d2;hp=52d93e77661289c4621d5e9b0200faea32613307;hb=d019ec96d99e5a42fe71235eee0e6de837028bee;hpb=811f75fbff10077ae6ef301ab31052d3e657ea5d diff --git a/JavaScriptCore/ChangeLog b/JavaScriptCore/ChangeLog index 52d93e7..55ee52b 100644 --- a/JavaScriptCore/ChangeLog +++ b/JavaScriptCore/ChangeLog @@ -1,3 +1,27 @@ +2008-12-30 Oliver Hunt + + Reviewed by Darin Adler. + + [jsfunfuzz] With blocks do not correctly protect their scope object + Crash in JSC::TypeInfo::hasStandardGetOwnPropertySlot() running jsfunfuzz + + The problem that caused this was that with nodes were not correctly protecting + the final object that was placed in the scope chain. We correct this by forcing + the use of a temporary register (which stops us relying on a local register + protecting the scope) and changing the behaviour of op_push_scope so that it + will store the final scope object. + + * bytecompiler/BytecodeGenerator.cpp: + (JSC::BytecodeGenerator::emitPushScope): + * interpreter/Interpreter.cpp: + (JSC::Interpreter::privateExecute): + (JSC::Interpreter::cti_op_push_scope): + * interpreter/Interpreter.h: + * jit/JIT.cpp: + (JSC::JIT::privateCompileMainPass): + * parser/Nodes.cpp: + (JSC::WithNode::emitBytecode): + 2008-12-30 Cameron Zwarich Reviewed by Sam Weinig.