Closed Bug 968742 Opened 10 years ago Closed 10 years ago

B2G NFC: Assertion failure: !aGCThing, at ../../../gecko/xpcom/base/CycleCollectedJSRuntime.cpp:836

Categories

(Firefox OS Graveyard :: NFC, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
1.4 S1 (14feb)

People

(Reporter: allstars.chh, Assigned: khuey)

References

Details

Attachments

(1 file, 2 obsolete files)

STR:

1. install nfc-demo from 
https://github.com/svic/gaia/tree/master/apps/nfc-demo
2. Enable NFC from Settings on Nexus-4
3. Take a tag close to the Nexus-4

Assertion happens:

Program received signal SIGSEGV, Segmentation fault.
0xb43e4cd8 in AssertNoGcThing (aGCThing=<optimized out>, aName=<optimized out>, aClosure=<optimized out>) at ../../../gecko/xpcom/base/CycleCollectedJSRuntime.cpp:836
836	  MOZ_ASSERT(!aGCThing);
(gdb) bt
#0  0xb43e4cd8 in AssertNoGcThing (aGCThing=<optimized out>, aName=<optimized out>, aClosure=<optimized out>) at ../../../gecko/xpcom/base/CycleCollectedJSRuntime.cpp:836
#1  AssertNoGcThing (aGCThing=<optimized out>, aName=<optimized out>, aClosure=<optimized out>) at ../../../gecko/xpcom/base/CycleCollectedJSRuntime.cpp:834
#2  0xb43d6a3e in TraceCallbackFunc::Trace (this=<optimized out>, p=<optimized out>, name=<optimized out>, closure=<optimized out>) at ../../../gecko/xpcom/glue/nsCycleCollectionParticipant.cpp:105
#3  0xb4d694ec in mozilla::dom::MozNdefRecord::cycleCollection::Trace (this=<optimized out>, p=<optimized out>, aCallbacks=..., aClosure=0x0) at ../../../gecko/dom/nfc/MozNdefRecord.cpp:32
#4  0xb43e5dc6 in mozilla::CycleCollectedJSRuntime::AssertNoObjectsToTrace (this=<optimized out>, aPossibleJSHolder=0xad7af0d0) at ../../../gecko/xpcom/base/CycleCollectedJSRuntime.cpp:844
#5  0xb43eb01c in nsCycleCollector::CollectWhite (this=0xb6b82000) at ../../../gecko/xpcom/base/nsCycleCollector.cpp:2723
#6  0xb43ebacc in Collect (aManualListener=0x0, aBudget=..., aCCType=SliceCC, this=0xb6b82000) at ../../../gecko/xpcom/base/nsCycleCollector.cpp:3023
#7  nsCycleCollector::Collect (this=0xb6b82000, aCCType=SliceCC, aBudget=..., aManualListener=0x0) at ../../../gecko/xpcom/base/nsCycleCollector.cpp:2983
#8  0xb43ebc00 in nsCycleCollector_collectSlice (aSliceTime=<optimized out>) at ../../../gecko/xpcom/base/nsCycleCollector.cpp:3566
#9  0xb4bd2b52 in RunCycleCollectorSlice (aSliceTime=-1) at ../../../gecko/dom/base/nsJSEnvironment.cpp:2151
#10 nsJSContext::RunCycleCollectorSlice (aSliceTime=<optimized out>) at ../../../gecko/dom/base/nsJSEnvironment.cpp:2140
#11 0xb4bd32ac in CCTimerFired (aTimer=<optimized out>, aClosure=<optimized out>) at ../../../gecko/dom/base/nsJSEnvironment.cpp:2449
#12 CCTimerFired (aTimer=<optimized out>, aClosure=<optimized out>) at ../../../gecko/dom/base/nsJSEnvironment.cpp:2403
#13 0xb44209d6 in nsTimerImpl::Fire (this=0xad0be970) at ../../../gecko/xpcom/threads/nsTimerImpl.cpp:551
#14 0xb4420b60 in nsTimerEvent::Run (this=0xae3ca490) at ../../../gecko/xpcom/threads/nsTimerImpl.cpp:635
#15 0xb441df62 in ProcessNextEvent (result=0xbef5f7f7, mayWait=<optimized out>, this=0xb6b34700) at ../../../gecko/xpcom/threads/nsThread.cpp:637
#16 nsThread::ProcessNextEvent (this=0xb6b34700, mayWait=<optimized out>, result=0xbef5f7f7) at ../../../gecko/xpcom/threads/nsThread.cpp:568
#17 0xb43d9970 in NS_ProcessNextEvent (thread=0xb6b34700, mayWait=<optimized out>) at ../../../gecko/xpcom/glue/nsThreadUtils.cpp:263
#18 0xb45b4da2 in mozilla::ipc::MessagePump::Run (this=0xb6b01e50, aDelegate=0xb6b4e1a0) at ../../../gecko/ipc/glue/MessagePump.cpp:134
#19 0xb45a69aa in MessageLoop::RunInternal (this=0xb6b4e1a0) at ../../../gecko/ipc/chromium/src/base/message_loop.cc:226
#20 0xb45a69c2 in RunHandler (this=0xb6b4e1a0) at ../../../gecko/ipc/chromium/src/base/message_loop.cc:219
#21 MessageLoop::Run (this=0xb6b4e1a0) at ../../../gecko/ipc/chromium/src/base/message_loop.cc:193
#22 0xb4b03d66 in nsBaseAppShell::Run (this=0xb22c5e80) at ../../../gecko/widget/xpwidgets/nsBaseAppShell.cpp:161
#23 0xb539ef16 in nsAppStartup::Run (this=0xb223dd90) at ../../../../gecko/toolkit/components/startup/nsAppStartup.cpp:276
#24 0xb537326e in XREMain::XRE_mainRun (this=0xbef5f98c) at ../../../gecko/toolkit/xre/nsAppRunner.cpp:4023
#25 0xb53734c8 in XREMain::XRE_main (this=0xbef5f98c, argc=<optimized out>, argv=<optimized out>, aAppData=<optimized out>) at ../../../gecko/toolkit/xre/nsAppRunner.cpp:4091
#26 0xb5373634 in XRE_main (argc=1, argv=0xbef61b44, aAppData=0x24920, aFlags=<optimized out>) at ../../../gecko/toolkit/xre/nsAppRunner.cpp:4331
#27 0x0000a49c in do_main (argv=0xbef61b44, argc=1) at ../../../gecko/b2g/app/nsBrowserApp.cpp:163
#28 main (argc=<optimized out>, argv=<optimized out>) at ../../../gecko/b2g/app/nsBrowserApp.cpp:256
Attached patch Patch (obsolete) — Splinter Review
I haven't tested this but it should fix the problem.  Can you test it Yoshi?
Attachment #8374654 - Flags: review?(allstars.chh)
yeah I could help to test it,
I just rebase my gecko, give me a few minutes to rebuild it.
Comment on attachment 8374654 [details] [diff] [review]
Patch

Review of attachment 8374654 [details] [diff] [review]:
-----------------------------------------------------------------

Yeah, the assertion is gone.
Attachment #8374654 - Flags: review?(allstars.chh) → review+
Attached patch Patch (obsolete) — Splinter Review
Thanks for testing.
Assignee: nobody → khuey
Attachment #8374654 - Attachment is obsolete: true
Status: NEW → ASSIGNED
Attachment #8374697 - Flags: review+
Attached patch PatchSplinter Review
convert it to hg patch.
Attachment #8374697 - Attachment is obsolete: true
Attachment #8374699 - Flags: review+
Bah, I meant to attach a version with a commit message and somehow I didn't :(
https://hg.mozilla.org/mozilla-central/rev/39e5e699daf1
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → 1.4 S1 (14feb)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: