Ignore:
Timestamp:
May 23, 2008, 1:49:39 PM (17 years ago)
Author:
[email protected]
Message:

JavaScriptCore:

2008-05-23 Geoffrey Garen <[email protected]>

Reviewed by Oliver Hunt.

  • fixed <rdar://problem/5957662> REGRESSION(r33943-r33980): Can't send email , attach file or save as draft from hotmail.com


SunSpider reports no change.


This is a reworking of r34073, which I rolled out because it caused
lots of crashes.

  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::CodeGenerator): Use removeDirect to nix old properties whose names collide with new functions. (Don't use putWithAttributes because that tries to write to the register file, which hasn't grown to fit this program yet.)

LayoutTests:

2008-05-23 Maciej Stachowiak <[email protected]>

Reviewed by Oliver.


  • test case <rdar://problem/5957662> REGRESSION(r33943-r33980): Can't send email , attach file or save as draft from hotmail.com
  • fast/js/function-redefinition-expected.txt: Added.
  • fast/js/function-redefinition.html: Added.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/VM/CodeGenerator.cpp

    r34087 r34089  
    207207        for (size_t i = 0; i < functionStack.size(); ++i) {
    208208            FuncDeclNode* funcDecl = functionStack[i];
     209            globalObject->removeDirect(funcDecl->m_ident); // Make sure our new function is not shadowed by an old property.
    209210            emitNewFunction(addVar(funcDecl->m_ident, false), funcDecl);
    210211        }
Note: See TracChangeset for help on using the changeset viewer.