bugzilla.mozilla.org will be intermittently unavailable on Saturday, March 24th, from 16:00 until 20:00 UTC.

Remove the nsIXPConnectWrappedNative bits from xpc::NativeGlobal




3 years ago
6 months ago


(Reporter: bz, Unassigned)


(Depends on: 2 bugs, Blocks: 1 bug)

Mac OS X
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)


Once bug 888600 is fixed and all our globals are non-XPCWN, we can do this.
I guess we'd need to also convert BackstagePass, though, right?
(In reply to Not doing reviews right now from comment #1)
> I guess we'd need to also convert BackstagePass, though, right?

Yes, exactly. I came to the bug to comment as such. :-)
Depends on: 1137773
No longer depends on: 888600
Fixing this would help fix bug 1274786, which shows up a tiny bit in speedometer.
OK, so we need to fix bug 888600 as a start... ;)
right. Or do we have some spare bits somewhere we could use to indicate whether the object is nsIGlobalObject and if so, just do static_cast?
The object is certainly an nsIGlobalObject.  The question is what the offset of its nsIGlobalObject pointer is from its canonical nsISupports pointer.

That is, this bug is about the !native case, which has a QI to nsIXPConnectWrappedNative and whatnot.  But that codepath is not taken for Window at this point; it only happens for non-webidl globals like the ones in bug 888600, sandboxes, and backstagepass.

If you're seeing QIing on speedometer, that's probably coming from the QI to nsIGlobalObject which isn't really related to this bug...


7 months ago
Depends on: 1137770
You need to log in before you can comment on or make changes to this bug.