[Webkit-unassigned] [Bug 74127] New: [Windows, WinCairo] testapi crashes in Release Build

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Dec 8 14:33:57 PST 2011


https://bugs.webkit.org/show_bug.cgi?id=74127

           Summary: [Windows, WinCairo] testapi crashes in Release Build
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: bfulgham at webkit.org


The 'testapi' test program will fail when running with default arguments (causing it to execute the "testapi.js" script) under Release builds.

Test program output is as follows:

PASS: Set private property.
PASS: Did not allow JSObjectSetPrivateProperty on a non-API object.
PASS: Retrieved private property.
PASS: JSObjectGetPrivateProperty return NULL.
PASS: Cannot access private property through ordinary property lookup.
PASS: Private property does not appear to have been collected.
PASS: Set private property to NULL.
PASS: Retrieved private property.
PASS: Parsed valid JSON string.
PASS: Correctly returned null for invalid JSON data.
PASS: Correctly serialised with indent of 0.
PASS: Correctly serialised with indent of 4.
PASS: returned null when attempting to serialize unserializable value.
PASS: returned null when attempting to serialize unserializable value.
PASS: set exception on serialisation error
PASS: globalStaticValue should be 3 and is.
PASS: globalStaticFunction() should be 4 and is.
PASS: typeof MyObject should be function and is.
PASS: MyObject.cantFind should be undefined and is.
PASS: MyObject.regularType should be 1 and is.
PASS: MyObject.alwaysOne should be 1 and is.
PASS: MyObject.cantDelete should be 1 and is.
PASS: delete MyObject.throwOnDelete should be an exception and is.
PASS: MyObject.cantSet should be undefined and is.
PASS: MyObject.throwOnGet should be an exception and is.
PASS: MyObject.throwOnSet = 5 should be an exception and is.
PASS: MyObject('throwOnCall') should be an exception and is.
PASS: new MyObject('throwOnConstruct') should be an exception and is.
PASS: 'throwOnHasInstance' instanceof MyObject should be an exception and is.
PASS: MyObject.nullGetForwardSet should be 1 and is.
PASS: MyObject.myPropertyName was enumerated
PASS: MyObject.regularType was enumerated
PASS: typeof alwaysOneDescriptor should be object and is.
PASS: alwaysOneDescriptor.value should be 1 and is.
PASS: alwaysOneDescriptor.configurable should be true and is.
PASS: alwaysOneDescriptor.enumerable should be false and is.
PASS: typeof cantFindDescriptor should be object and is.
PASS: cantFindDescriptor.value should be undefined and is.
PASS: cantFindDescriptor.configurable should be true and is.
PASS: cantFindDescriptor.enumerable should be false and is.
PASS: getting property descriptor of throwOnGet threw exception
PASS: typeof myPropertyNameDescriptor should be object and is.
PASS: myPropertyNameDescriptor.value should be 1 and is.
PASS: myPropertyNameDescriptor.configurable should be true and is.
PASS: myPropertyNameDescriptor.enumerable should be false and is.
PASS: Object.getOwnPropertyDescriptor(MyObject, "doesNotExist") should be undefi
ned and is.
PASS: delete MyObject.regularType should be true and is.
PASS: MyObject.regularType should be undefined and is.
PASS: MyObject(0) should be 1 and is.
PASS: MyObject() should be undefined and is.
PASS: typeof myObject should be object and is.
PASS: MyObject ? 1 : 0 should be true and is.
PASS: +MyObject should be 1 and is.
PASS: (Object.prototype.toString.call(MyObject)) should be [object MyObject] and is.
PASS: (MyObject.toString()) should be MyObjectAsString and is.
PASS: String(MyObject) should be MyObjectAsString and is.
PASS: MyObject - 0 should be 1 and is.
PASS: MyObject.valueOf() should be 1 and is.
PASS: typeof MyConstructor should be object and is.
PASS: typeof constructedObject should be object and is.
PASS: constructedObject.value should be 1 and is.
PASS: myObject instanceof MyObject should be true and is.
PASS: (new Object()) instanceof MyObject should be false and is.
PASS: MyObject.nullGetSet should be 1 and is.
<<< CRASH >>>

Stack trace:

     fffffffd()    
>	JavaScriptCore.dll!JSC::JSCallbackObject<JSC::JSNonFinalObject>::getOwnPropertySlot(JSC::JSCell * cell=0x003d2f70, JSC::ExecState * exec=0x02850128, const JSC::Identifier & propertyName={...}, JSC::PropertySlot & slot={...})  Line 141 + 0x9 bytes	C++
     JavaScriptCore.dll!JSC::JSObject::hasProperty(JSC::ExecState * exec=0x02850128, const JSC::Identifier & propertyName={...})  Line 222 + 0x117 bytes    C++
     JavaScriptCore.dll!JSC::hasErrorInfo(JSC::ExecState * exec=0x02850128, JSC::JSObject * error=0x003d2f70)  Line 144 + 0x37 bytes    C++
     JavaScriptCore.dll!JSC::Interpreter::throwException(JSC::ExecState * & callFrame=0x02850128, JSC::JSValue & exceptionValue={...}, unsigned int bytecodeOffset=0x00000007)  Line 799 + 0x21 bytes    C++
     JavaScriptCore.dll!JSC::jitThrow(JSC::JSGlobalData * globalData=0x00000000, JSC::ExecState * callFrame=0x02850128, JSC::JSValue exceptionValue={...}, JSC::ReturnAddressPtr faultLocation={...})  Line 1049    C++
     JavaScriptCore.dll!cti_vm_throw(void * * args=0x00000000)  Line 3720 + 0x1e bytes    C++
     JavaScriptCore.dll!ctiVMThrowTrampoline()  Line 245    C++
     JavaScriptCore.dll!JSC::Interpreter::execute(JSC::EvalExecutable * eval=0x7ee9414c, JSC::ExecState * callFrame=0x02850128, JSC::JSValue thisValue={...}, JSC::ScopeChainNode * scopeChain=0x7ee97800, int globalRegisterOffset=0x0034f5f4)  Line 1388 + 0x1f bytes    C++
     JavaScriptCore.dll!JSC::Interpreter::execute(JSC::EvalExecutable * eval=0x02002810, JSC::ExecState * callFrame=0x7ef43dc0, JSC::JSValue thisValue={...}, JSC::ScopeChainNode * scopeChain=0x7ee97800, int globalRegisterOffset=0x00000025)  Line 1388 + 0x1f bytes    C++
     JavaScriptCore.dll!JSC::eval(JSC::ExecState * callFrame=0x7ee94f50)  Line 469 + 0x20 bytes    C++
     JavaScriptCore.dll!cti_op_call_eval(void * * args=0x00000000)  Line 3369    C++
     002026e0()    
     JavaScriptCore.dll!JSC::JITCode::execute(JSC::RegisterFile * registerFile=0x7ee9414c, JSC::ExecState * callFrame=0x02850038, JSC::JSGlobalData * globalData=0x7ee97800)  Line 115 + 0x1c bytes    C++
     JavaScriptCore.dll!JSC::Interpreter::execute(JSC::ProgramExecutable * program=, JSC::ExecState * callFrame=, JSC::ScopeChainNode * scopeChain=, JSC::JSObject * thisObj=)  Line 1002 + 0x24 bytes    C++
     JavaScriptCore.dll!JSC::evaluate(JSC::ExecState * exec=0x00213d28, JSC::ScopeChainNode * scopeChain=0x00243fd0, const JSC::SourceCode & source={...}, JSC::JSValue thisValue={...}, JSC::JSValue * returnedException=0x0034fcf0)  Line 72    C++
     JavaScriptCore.dll!JSEvaluateScript(const OpaqueJSContext * ctx=0x7eec6000, OpaqueJSString * script=0x7ee93680, OpaqueJSValue * thisObject=0x00000000, OpaqueJSString * sourceURL=0x00000000, int startingLineNumber=0x00000000, const OpaqueJSValue * * exception=0x0034ff0c)  Line 58    C++
     testapi.exe!main(int argc=0x021f48a8, char * * argv=0x0022e0c0)  Line 1505 + 0x1c bytes    C++
     testapi.exe!__tmainCRTStartup()  Line 597 + 0x17 bytes    C

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list