Reviewers: Mads Ager, Description: Fix a bug in delete for lookup slots.
The function Runtime_LookupContext searches the context chain for a LOOKUP slot and returns the object holding the slot. It returned the global context if the slot was not found or if it was found in a function's context or arguments object. This is not the correct object to use for 'delete'. Since this lookup function is only ever used when deleting LOOKUP slots (those that have to go through a with or a scope with eval), it is simply replaced with a Runtime_DeleteContextSlot function that does the appropriate thing for all kinds of context lookups. This fixes Chromium bug 70066. http://code.google.com/p/chromium/issues/detail?id=70066 Please review this at http://codereview.chromium.org/6280013/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files: M src/arm/codegen-arm.cc M src/arm/full-codegen-arm.cc M src/ia32/codegen-ia32.cc M src/ia32/full-codegen-ia32.cc M src/runtime.h M src/runtime.cc M src/x64/codegen-x64.cc M src/x64/full-codegen-x64.cc A test/mjsunit/regress/regress-70066.js -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
