Changeset 15583 in webkit for trunk/JavaScriptCore


Ignore:
Timestamp:
Jul 23, 2006, 2:59:00 PM (19 years ago)
Author:
ggaren
Message:

2006-07-23 Geoffrey Garen <[email protected]>

Patch by Eric Albert, reviewed by Darin and me.


  • Fixed <rdar://problem/4645931> JavaScriptCore stack-scanning code crashes (Collector::markStackObjectsConservatively)


  • bindings/jni/jni_jsobject.cpp: On 64bit systems, jint is a long, not an int. (JavaJSObject::getSlot): (JavaJSObject::setSlot):
  • kjs/collector.cpp: (KJS::Collector::markCurrentThreadConservatively): Use a pointer instead of an int as 'dummy,' because on LP64 systems, an int is not pointer-aligned, and we want to scan the stack for pointers.
  • JavaScriptCore.xcodeproj/project.pbxproj: After a tense cease-fire, the XCode war has started up again!
Location:
trunk/JavaScriptCore
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/ChangeLog

    r15561 r15583  
     1    2006-07-23  Geoffrey Garen  <[email protected]>
     2
     3        Patch by Eric Albert, reviewed by Darin and me.
     4       
     5        - Fixed <rdar://problem/4645931> JavaScriptCore stack-scanning code
     6        crashes (Collector::markStackObjectsConservatively)
     7       
     8        * bindings/jni/jni_jsobject.cpp: On 64bit systems, jint is a long, not an
     9        int.
     10        (JavaJSObject::getSlot):
     11        (JavaJSObject::setSlot):
     12        * kjs/collector.cpp:
     13        (KJS::Collector::markCurrentThreadConservatively): Use a pointer instead of
     14        an int as 'dummy,' because on LP64 systems, an int is not pointer-aligned,
     15        and we want to scan the stack for pointers.
     16        * JavaScriptCore.xcodeproj/project.pbxproj: After a tense cease-fire, the
     17        XCode war has started up again!
     18
    119=== Safari-521.20 ===
    220
  • trunk/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj

    r15501 r15583  
    12161216                        isa = PBXProject;
    12171217                        buildConfigurationList = 149C277108902AFE008A9EFC /* Build configuration list for PBXProject "JavaScriptCore" */;
     1218                        compatibilityVersion = "Xcode 2.4";
    12181219                        hasScannedForEncodings = 1;
    12191220                        mainGroup = 0867D691FE84028FC02AAC07 /* JavaScriptCore */;
    12201221                        productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
    12211222                        projectDirPath = "";
     1223                        projectRoot = "";
     1224                        shouldCheckCompatibility = 1;
    12221225                        targets = (
    12231226                                932F5B3E0822A1C700736975 /* JavaScriptCore */,
  • trunk/JavaScriptCore/bindings/jni/jni_jsobject.cpp

    r13468 r15583  
    245245jobject JavaJSObject::getSlot(jint index) const
    246246{
     247#if __LP64__
     248    JS_LOG ("index = %d\n", index);
     249#else
    247250    JS_LOG ("index = %ld\n", index);
     251#endif
    248252
    249253    ExecState *exec = _root->interpreter()->globalExec();
     
    258262void JavaJSObject::setSlot(jint index, jobject value) const
    259263{
     264#if __LP64__
     265    JS_LOG ("index = %d, value = %p\n", index, value);
     266#else
    260267    JS_LOG ("index = %ld, value = %p\n", index, value);
     268#endif
    261269
    262270    ExecState *exec = _root->interpreter()->globalExec();
  • trunk/JavaScriptCore/kjs/collector.cpp

    r14834 r15583  
    334334#endif
    335335
    336     int dummy;
     336    void *dummy;
    337337    void *stackPointer = &dummy;
    338338
Note: See TracChangeset for help on using the changeset viewer.