Closed
Bug 416665
Opened 16 years ago
Closed 16 years ago
Crash when loading website with Firebug 1.1 installed [@ JS_Assert][@ js_GetIndexFromBytecode]
Categories
(Core :: JavaScript Engine, defect, P1)
Core
JavaScript Engine
Tracking
()
VERIFIED
FIXED
mozilla1.9beta4
People
(Reporter: whimboo, Assigned: brendan)
References
()
Details
(Keywords: crash)
Crash Data
Attachments
(1 file, 2 obsolete files)
7.65 KB,
patch
|
igor
:
review+
brendan
:
approval1.9+
|
Details | Diff | Splinter Review |
Seen with the latest trunk build while loading the above website and Firebug 1.1 installed. Backtrace: #0 JS_Assert (s=0x110f784 "js_CodeSpec[op].length >= 1 + pcoff + UINT16_LEN", file=0x110f744 "/Users/henrik/Projects/mozilla/source/mozilla/js/src/jsopcode.c", ln=132) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsutil.c:63 #1 0x0109d14e in js_GetIndexFromBytecode (script=0x3afc9fb0, pc=0x3afc9fec "S", pcoff=0) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsopcode.c:132 #2 0x01061357 in js_FullTestPropertyCache (cx=0x3ab8ac50, pc=0x3afc9fec "S", objp=0xbfff978c, pobjp=0xbfff9788, entryp=0xbfff9634) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:267 #3 0x0107a7f0 in js_Interpret (cx=0x3ab8ac50, pc=0x3afc9fec "S", result=0xbfff9ad8) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:4602 #4 0x01063e73 in js_Execute (cx=0x3ab8ac50, chain=0x39817080, script=0x3afc9fb0, down=0xbfffd474, flags=24, result=0xbfff9c70) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:1639 #5 0x01035dbd in JS_EvaluateUCInStackFrame (cx=0x3ab8ac50, fp=0xbfffd474, chars=0x3addf020, length=17, filename=0x3af8b830 "lib.createSourceFileForEval.getEvalBody", lineno=1, rval=0xbfff9c70) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsdbgapi.c:1224 #6 0x028106c0 in jsd_EvaluateUCScriptInStackFrame (jsdc=0x2937210, jsdthreadstate=0x3d3b0d40, jsdframe=0x3d3b0d60, bytes=0x3addf020, length=17, filename=0x3af8b830 "lib.createSourceFileForEval.getEvalBody", lineno=1, eatExceptions=0, rval=0xbfff9c70) at /Users/henrik/Projects/mozilla/source/mozilla/js/jsd/jsd_stak.c:457 #7 0x0280a9ac in JSD_AttemptUCScriptInStackFrame (jsdc=0x2937210, jsdthreadstate=0x3d3b0d40, jsdframe=0x3d3b0d60, bytes=0x3addf020, length=17, filename=0x3af8b830 "lib.createSourceFileForEval.getEvalBody", lineno=1, rval=0xbfff9c70) at /Users/henrik/Projects/mozilla/source/mozilla/js/jsd/jsdebug.c:793 #8 0x028170b9 in jsdStackFrame::Eval (this=0x3d3b0dc0, bytes=@0xbfffa1a0, fileName=0x3af8b830 "lib.createSourceFileForEval.getEvalBody", line=1, result=0xbfff9f14, _rval=0xbfff9f24) at /Users/henrik/Projects/mozilla/source/mozilla/js/jsd/jsd_xpc.cpp:1933 #9 0x01395b38 in NS_InvokeByIndex_P (that=0x3d3b0dc0, methodIndex=20, paramCount=5, params=0xbfff9ee4) at /Users/henrik/Projects/mozilla/source/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_unixish_x86.cpp:179 #10 0x137067bf in XPCWrappedNative::CallMethod (ccx=@0xbfffa12c, mode=CALL_METHOD) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp:2339 #11 0x1370e2f8 in XPC_WN_CallMethod (cx=0x3ab8ac50, obj=0x39817580, argc=4, argv=0x2658e98, vp=0xbfffa260) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/xpconnect/src/xpcwrappednativejsops.cpp:1470 #12 0x010635a2 in js_Invoke (cx=0x3ab8ac50, argc=4, vp=0x2658e90, flags=0) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:1400 #13 0x0107a035 in js_Interpret (cx=0x3ab8ac50, pc=0x397f696a ":", result=0xbfffaa68) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:4530 #14 0x0106362d in js_Invoke (cx=0x3ab8ac50, argc=1, vp=0x2658cf0, flags=2) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:1416 #15 0x137013c5 in nsXPCWrappedJSClass::CallMethod (this=0x3d3af800, wrapper=0x3d3af950, methodIndex=3, info=0x22ee2b0, nativeParams=0xbfffaec4) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/xpconnect/src/xpcwrappedjsclass.cpp:1473 #16 0x136f9b1f in nsXPCWrappedJS::CallMethod (this=0x3d3af950, methodIndex=3, info=0x22ee2b0, params=0xbfffaec4) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/xpconnect/src/xpcwrappedjs.cpp:556 #17 0x01395df2 in PrepareAndDispatch (self=0x3d3af990, methodIndex=3, args=0xbfffafe4) at /Users/henrik/Projects/mozilla/source/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_unixish_x86.cpp:93 #18 0x01395e50 in nsXPTCStubBase::Stub3 (this=0x3d3af990) at ../../../../../../dist/include/xpcom/xptcstubsdef.inc:5 #19 0x01395b38 in NS_InvokeByIndex_P (that=0x3d3af990, methodIndex=3, paramCount=2, params=0xbfffb214) at /Users/henrik/Projects/mozilla/source/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_unixish_x86.cpp:179 #20 0x137067bf in XPCWrappedNative::CallMethod (ccx=@0xbfffb45c, mode=CALL_METHOD) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp:2339 #21 0x1370e2f8 in XPC_WN_CallMethod (cx=0x3ab8ac50, obj=0x349660a0, argc=1, argv=0x2658cdc, vp=0xbfffb590) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/xpconnect/src/xpcwrappednativejsops.cpp:1470 #22 0x010635a2 in js_Invoke (cx=0x3ab8ac50, argc=1, vp=0x2658cd4, flags=0) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:1400 #23 0x0107a035 in js_Interpret (cx=0x3ab8ac50, pc=0x3993603b ":", result=0xbfffbd98) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:4530 #24 0x0106362d in js_Invoke (cx=0x3ab8ac50, argc=3, vp=0x2658b38, flags=2) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:1416 #25 0x0105786a in fun_apply (cx=0x3ab8ac50, argc=3, vp=0x2658b20) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsfun.c:1626 #26 0x01079fce in js_Interpret (cx=0x3ab8ac50, pc=0x3993db67 ":", result=0xbfffc638) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:4512 #27 0x0106362d in js_Invoke (cx=0x3ab8ac50, argc=3, vp=0x2658af4, flags=2) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:1416 #28 0x137013c5 in nsXPCWrappedJSClass::CallMethod (this=0x3b157f70, wrapper=0x3b1583b0, methodIndex=3, info=0x22eed00, nativeParams=0xbfffca94) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/xpconnect/src/xpcwrappedjsclass.cpp:1473 #29 0x136f9b1f in nsXPCWrappedJS::CallMethod (this=0x3b1583b0, methodIndex=3, info=0x22eed00, params=0xbfffca94) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/xpconnect/src/xpcwrappedjs.cpp:556 #30 0x01395df2 in PrepareAndDispatch (self=0x3b1583f0, methodIndex=3, args=0xbfffcbb4) at /Users/henrik/Projects/mozilla/source/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_unixish_x86.cpp:93 #31 0x01395e50 in nsXPTCStubBase::Stub3 (this=0x3b1583f0) at ../../../../../../dist/include/xpcom/xptcstubsdef.inc:5 #32 0x0281bfe7 in jsds_ExecutionHookProc (jsdc=0x2937210, jsdthreadstate=0x3d3b0d40, type=1, callerdata=0x1, rval=0xbfffd134) at /Users/henrik/Projects/mozilla/source/mozilla/js/jsd/jsd_xpc.cpp:687 #33 0x0280cd53 in jsd_CallExecutionHook (jsdc=0x2937210, cx=0x3ab8ac50, type=1, hook=0x281bc16 <jsds_ExecutionHookProc(JSDContext*, JSDThreadState*, unsigned int, void*, long*)>, hookData=0x1, rval=0xbfffd134) at /Users/henrik/Projects/mozilla/source/mozilla/js/jsd/jsd_hook.c:177 #34 0x0280f3d2 in jsd_TrapHandler (cx=0x3ab8ac50, script=0x3d3b0800, pc=0x3d3b083c "9", rval=0xbfffd134, closure=0x3d3b0d01) at /Users/henrik/Projects/mozilla/source/mozilla/js/jsd/jsd_scpt.c:736 #35 0x01033d55 in JS_HandleTrap (cx=0x3ab8ac50, script=0x3d3b0800, pc=0x3d3b083c "9", rval=0xbfffd134) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsdbgapi.c:294 #36 0x0107d9f3 in js_Interpret (cx=0x3ab8ac50, pc=0x3d3b083c "9", result=0xbfffd498) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:5085 #37 0x01063e73 in js_Execute (cx=0x3ab8ac50, chain=0x39817080, script=0x3d3b0800, down=0x2658a28, flags=16, result=0xbfffd640) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:1639 #38 0x01092c0a in obj_eval (cx=0x3ab8ac50, obj=0x33379940, argc=1, argv=0x2658ac4, rval=0xbfffd640) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsobj.c:1318 #39 0x010635a2 in js_Invoke (cx=0x3ab8ac50, argc=1, vp=0x2658abc, flags=0) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:1400 #40 0x0107a035 in js_Interpret (cx=0x3ab8ac50, pc=0x3b1e3e2c "y", result=0xbfffde48) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:4530 #41 0x01063e73 in js_Execute (cx=0x3ab8ac50, chain=0x33379940, script=0x3d3ae590, down=0x0, flags=0, result=0xbfffdf78) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsinterp.c:1639 #42 0x0101f914 in JS_EvaluateUCScriptForPrincipals (cx=0x3ab8ac50, obj=0x33379940, principals=0x3afceb54, chars=0x3b1e0b80, length=8, filename=0x3af735f8 "http://www.wetteronline.de/startseite/includes/operationell/ticker_gif.js", lineno=103, rval=0xbfffdf78) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsapi.c:4891 #43 0x188a1188 in nsJSContext::EvaluateString (this=0x3ab8a2c0, aScript=@0xbfffe0e4, aScopeObject=0x33379940, aPrincipal=0x3afceb50, aURL=0x3af735f8 "http://www.wetteronline.de/startseite/includes/operationell/ticker_gif.js", aLineNo=103, aVersion=0, aRetValue=0x0, aIsUndefined=0xbfffe0c8) at /Users/henrik/Projects/mozilla/source/mozilla/dom/src/base/nsJSEnvironment.cpp:1497 #44 0x188cf2b8 in nsGlobalWindow::RunTimeout (this=0x3b110520, aTimeout=0x3becbcc0) at /Users/henrik/Projects/mozilla/source/mozilla/dom/src/base/nsGlobalWindow.cpp:7556 #45 0x188cf966 in nsGlobalWindow::TimerCallback (aTimer=0x3beca990, aClosure=0x3becbcc0) at /Users/henrik/Projects/mozilla/source/mozilla/dom/src/base/nsGlobalWindow.cpp:7906 #46 0x01387d34 in nsTimerImpl::Fire (this=0x3beca990) at /Users/henrik/Projects/mozilla/source/mozilla/xpcom/threads/nsTimerImpl.cpp:400 #47 0x01387f61 in nsTimerEvent::Run (this=0x3d15ada0) at /Users/henrik/Projects/mozilla/source/mozilla/xpcom/threads/nsTimerImpl.cpp:488 #48 0x01383c7b in nsThread::ProcessNextEvent (this=0x29253d0, mayWait=0, result=0xbfffe324) at /Users/henrik/Projects/mozilla/source/mozilla/xpcom/threads/nsThread.cpp:510 #49 0x0132af3b in NS_ProcessPendingEvents_P (thread=0x29253d0, timeout=20) at nsThreadUtils.cpp:180 #50 0x15e8b6a1 in nsBaseAppShell::NativeEventCallback (this=0x2943f60) at /Users/henrik/Projects/mozilla/source/mozilla/widget/src/xpwidgets/nsBaseAppShell.cpp:112 #51 0x15e6a501 in nsAppShell::ProcessGeckoEvents (aInfo=0x2943f60) at /Users/henrik/Projects/mozilla/source/mozilla/widget/src/cocoa/nsAppShell.mm:294 #52 0x9082cf1a in CFRunLoopRunSpecific () #53 0x9082ca56 in CFRunLoopRunInMode () #54 0x92df0878 in RunCurrentEventLoopInMode () #55 0x92defeb9 in ReceiveNextEventCommon () #56 0x92defdd9 in BlockUntilNextEventMatchingListInMode () #57 0x93296485 in _DPSNextEvent () #58 0x93296076 in -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] () #59 0x9328fdfb in -[NSApplication run] () #60 0x15e698b4 in nsAppShell::Run (this=0x2943f60) at /Users/henrik/Projects/mozilla/source/mozilla/widget/src/cocoa/nsAppShell.mm:565 #61 0x16d5bc5b in nsAppStartup::Run (this=0x2964700) at /Users/henrik/Projects/mozilla/source/mozilla/toolkit/components/startup/src/nsAppStartup.cpp:181 #62 0x00211146 in XRE_main (argc=1, argv=0xbffff740, aAppData=0x290b2d0) at /Users/henrik/Projects/mozilla/source/mozilla/toolkit/xre/nsAppRunner.cpp:3145 #63 0x00002798 in main (argc=1, argv=0xbffff740) at /Users/henrik/Projects/mozilla/source/mozilla/browser/app/nsBrowserApp.cpp:158 Argument values: (gdb) p *s $1 = 106 'j' (gdb) p *file $2 = 47 '/' Haven't tested it under Windows yet.
Flags: blocking1.9?
Reporter | ||
Comment 1•16 years ago
|
||
This cannot happen under Windows when having a look at the source: http://bonsai.mozilla.org/cvsblame.cgi?file=/mozilla/js/src/jsutil.c&rev=3.296
eh? run it under a debugger, DebugBreak() will land you in the debugger. It's functionally equivalent.
Reporter | ||
Comment 3•16 years ago
|
||
Oh right. But I forgot to say that no crash happens under Windows with the same versions of Minefield and Firebug.
Assignee | ||
Updated•16 years ago
|
Assignee: general → brendan
Blocks: js-propcache
Flags: blocking1.9? → blocking1.9+
OS: Mac OS X → All
Priority: -- → P1
Hardware: PC → All
Target Milestone: --- → mozilla1.9beta4
Assignee | ||
Comment 4•16 years ago
|
||
Henrik: could you please reproduce in a debugger and print op and js_CodeSpec[op]? Thanks, /be
Reporter | ||
Comment 5•16 years ago
|
||
Sure. Here the output of the debugger: (gdb) frame 1 #1 0x0109d14e in js_GetIndexFromBytecode (script=0x40034ca0, pc=0x40034cdc "S", pcoff=0) at /Users/henrik/Projects/mozilla/source/mozilla/js/src/jsopcode.c:132 132 JS_ASSERT(js_CodeSpec[op].length >= 1 + pcoff + UINT16_LEN); Current language: auto; currently c (gdb) p op $1 = JSOP_TRAP (gdb) p js_CodeSpec[op] $2 = { length = 1 '\001', nuses = 0 '\0', ndefs = 0 '\0', prec = 0 '\0', format = 0 }
Assignee | ||
Updated•16 years ago
|
Status: NEW → ASSIGNED
Assignee | ||
Comment 6•16 years ago
|
||
Henrik, can you test this? Thanks, /be
Attachment #303216 -
Flags: review?(igor)
Comment 7•16 years ago
|
||
Comment on attachment 303216 [details] [diff] [review] proposed fix >Index: jsopcode.c >=================================================================== >RCS file: /cvsroot/mozilla/js/src/jsopcode.c,v >retrieving revision 3.290 >diff -p -u -8 -r3.290 jsopcode.c >--- jsopcode.c 10 Feb 2008 03:30:08 -0000 3.290 >+++ jsopcode.c 14 Feb 2008 07:12:57 -0000 >@@ -124,16 +124,21 @@ GetJumpOffset(jsbytecode *pc, jsbytecode > > uintN > js_GetIndexFromBytecode(JSScript *script, jsbytecode *pc, ptrdiff_t pcoff) > { > JSOp op; > uintN span, base; > > op = (JSOp)*pc; >+ if (op == JSOP_TRAP) { >+ op = JS_GetTrapOpcode(cx, script, pc); This would not compile as js_GetIndexFromBytecode does not take cx. >+ if (op == JSOP_LIMIT) >+ return 0; >+ } The callers of js_GetIndexFromBytecode expect that the function never fails. I think passing the bytecode itself to the function would fix the issue in a proper way.
Attachment #303216 -
Flags: review?(igor) → review-
Assignee | ||
Comment 8•16 years ago
|
||
Failure is not possible with a properly threaded debugger embedding, that pattern of checking for JSOP_LIMIT is just paranoia -- see JS_GetTrapOpcode: JS_PUBLIC_API(JSOp) JS_GetTrapOpcode(JSContext *cx, JSScript *script, jsbytecode *pc) { JSTrap *trap; DBG_LOCK_EVAL(cx->runtime, trap = FindTrap(cx->runtime, script, pc)); if (!trap) { #ifdef JS_THREADSAFE /* * If we lost a race with another thread, return JSOP_LIMIT so our * caller can detect this case and do something sane. */ #else JS_ASSERT(0); /* XXX can't happen */ #endif return JSOP_LIMIT; } return trap->op; } I would prefer to reparameterize js_GetIndexFromBytecode but keep it infallible. Igor, how does that sound? /be
Comment 9•16 years ago
|
||
(In reply to comment #8) > Failure is not possible with a properly threaded debugger embedding, that > pattern of checking for JSOP_LIMIT is just paranoia -- see JS_GetTrapOpcode: > > JS_PUBLIC_API(JSOp) > JS_GetTrapOpcode(JSContext *cx, JSScript *script, jsbytecode *pc) > { > JSTrap *trap; > > DBG_LOCK_EVAL(cx->runtime, trap = FindTrap(cx->runtime, script, pc)); > if (!trap) { > #ifdef JS_THREADSAFE > /* > * If we lost a race with another thread, return JSOP_LIMIT so our > * caller can detect this case and do something sane. > */ How that can be a paranoia if the code explicitly allows to fail?
Comment 10•16 years ago
|
||
(In reply to comment #8) > JS_PUBLIC_API(JSOp) > JS_GetTrapOpcode(JSContext *cx, JSScript *script, jsbytecode *pc) > { > JSTrap *trap; > > DBG_LOCK_EVAL(cx->runtime, trap = FindTrap(cx->runtime, script, pc)); > if (!trap) { > #ifdef JS_THREADSAFE > /* > * If we lost a race with another thread, return JSOP_LIMIT so our > * caller can detect this case and do something sane. > */ I guess this is a bug in JS_GetTrapOpcode. It should never fail. Instead it can just check under the lock the value of *pc. If it is not [trap], then it should just return it.
Assignee | ||
Comment 11•16 years ago
|
||
Right! For the longest time, the jsdbgapi.c code lacked any thread safety. You had to run one debugger in one thread, and not have racing trap-opcode setters or anything like that. But now that we lock, it's easy to fix. I will do this later today (feel free to steal this bug, though!). /be
Assignee | ||
Comment 12•16 years ago
|
||
Attachment #303216 -
Attachment is obsolete: true
Assignee | ||
Updated•16 years ago
|
Attachment #303653 -
Flags: review?(igor)
Comment 13•16 years ago
|
||
Comment on attachment 303653 [details] [diff] [review] better proposed fix >diff -p -u -8 -r3.291 jsopcode.c >--- jsopcode.c 16 Feb 2008 02:46:46 -0000 3.291 >+++ jsopcode.c 16 Feb 2008 03:12:53 -0000 >@@ -3804,27 +3805,27 @@ Decompile(SprintStack *ss, jsbytecode *p > op = ((js_CodeSpec[op].format & JOF_PARENHEAD) || > ((js_CodeSpec[op].format & JOF_INVOKE) && > GET_ARGC(pc + len) == 1) || > (((op == JSOP_IFEQ || op == JSOP_IFEQX) && > (sn2 = js_GetSrcNote(outer, pc + len)) && > SN_TYPE(sn2) != SRC_COND))) > ? JSOP_POP > : JSOP_SETNAME; >+ } > > /* > * Stack this result as if it's a name, not an anonymous > * function, so it doesn't get decompiled as a generator > * function in a getter or setter context. The precedence > * level is the same for JSOP_NAME and JSOP_ANONFUNOBJ. > */ > LOCAL_ASSERT(js_CodeSpec[JSOP_NAME].prec == > js_CodeSpec[saveop].prec); > saveop = JSOP_NAME; >- } This fixes a bug an unrelated bug, doesn't it? I.e without the patch saveop would not be stacked, right? r+ with this mystery resolved.
Assignee | ||
Comment 14•16 years ago
|
||
Yes, I noticed the indentation wrongness and reasoned that the brace was misplaced -- want me to split it out into another bug? Could use your confirmation of my reasoning in any event. /be
Comment 15•16 years ago
|
||
(In reply to comment #14) > Yes, I noticed the indentation wrongness and reasoned that the brace was > misplaced -- want me to split it out into another bug? That would be ideal. I wish bugzilla would have an option like clone bug to quickly file stuff like that...
Comment 16•16 years ago
|
||
Look for "Clone This Bug" near the bottom of the page... On the same line with the bold "BUG LIST:"
Assignee | ||
Comment 17•16 years ago
|
||
Attachment #303653 -
Attachment is obsolete: true
Attachment #303840 -
Flags: review?(igor)
Attachment #303653 -
Flags: review?(igor)
Updated•16 years ago
|
Attachment #303840 -
Flags: review?(igor) → review+
Assignee | ||
Updated•16 years ago
|
Attachment #303840 -
Flags: approval1.9+
Assignee | ||
Comment 18•16 years ago
|
||
Fixed: js/src/jsdbgapi.c 3.129 js/src/jsopcode.c 3.293 js/src/jsopcode.h 3.59 /be
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Reporter | ||
Comment 19•16 years ago
|
||
Verified with Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9b4pre) Gecko/2008021804 Minefield/3.0b4pre ID:2008021804
Status: RESOLVED → VERIFIED
Updated•16 years ago
|
Flags: in-testsuite-
Flags: in-litmus-
Updated•13 years ago
|
Crash Signature: [@ JS_Assert]
[@ js_GetIndexFromBytecode]
You need to log in
before you can comment on or make changes to this bug.
Description
•