https://bugzilla.novell.com/show_bug.cgi?id=746647
https://bugzilla.novell.com/show_bug.cgi?id=746647#c13
Wolfgang Rosenauer changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|Firefox |GNOME
--- Comment #13 from Wolfgang Rosenauer 2012-02-16 19:31:17 UTC ---
Vincent, there is an analysis in the Mozilla bug. See below.
Could you please fix and/or upstream this?
-----
Oh, so the extension isn't actually holding onto the closure it passes into
native code. So the relevant data gets GCed, and it crashes.
The culprit line is here:
http://git.gnome.org/browse/tracker/tree/src/plugins/firefox/chrome/content/...
The closure is constructed with
|tracker.AsyncReadyCallback.ptr(callback_closure)|, which passes it directly
into the native function without storing a reference to it. The best solution
is probably to do something like:
tracker.readyCallback = tracker.AsyncReadyCallback.ptr(callback_closure)
tracker.connection_open_async(null, tracker.readyCallback, null);
I've updated the docs to add an explicit warning to this effect:
https://developer.mozilla.org/en/js-ctypes/js-ctypes_reference/Callbacks
Wolfgang, can you take charge of coordinating with the gnome developers to get
this fixed?
-----
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.