Closed Bug 1129277 Opened 5 years ago Closed 5 years ago

Remove "builtinclass" interface attribute from nsIMobileConnectionCallback

Categories

(Firefox OS Graveyard :: RIL, defect)

x86_64
Linux
defect
Not set

Tracking

(blocking-b2g:2.2+, tracking-b2g:backlog, firefox36 wontfix, firefox37 wontfix, firefox38 fixed, b2g-v2.2 fixed, b2g-master fixed)

RESOLVED FIXED
2.2 S6 (20feb)
blocking-b2g 2.2+
tracking-b2g backlog
Tracking Status
firefox36 --- wontfix
firefox37 --- wontfix
firefox38 --- fixed
b2g-v2.2 --- fixed
b2g-master --- fixed

People

(Reporter: aknow, Assigned: aknow)

References

Details

Attachments

(1 file)

"builtinclass" means

"""
JavaScript classes are forbidden from implementing this interface.
"""

Most of the methods in nsIMobileConnection require a nsIMobileConnectionCallback.  If it is not allowed to be implemented in JavaScript, that means other services like GonkTelephonyService which we wrote in JavaScript is not possible to use those method.

For me, it's not reasonable and I'd like to change it.  The only problem is that I'm not really sure whether it will affect our locked down interface or not.  If the new interface remains the same binary compatibility, we are okay to do it.

The MDN document lists some attributes and tell whether they affect the binary compatibility [1].  But, "builtinclass" is not in the list so I am not sure about it.

[1] https://developer.mozilla.org/en-US/docs/Mozilla/XPIDL#Source_and_Binary_Compatibility
Let me ask the expert. :)

Hi Kyle,

If I change the idl interface attribute "builtinclass", will it affect the binary compatibility?
Flags: needinfo?(khuey)
No, it doesn't change the binary compatibility, so you don't need to change the IID.  But you should make sure that we don't static_cast an nsIFoo to the concrete implementation type, because that is unsafe without 'builtinclass'.

Bonus points if you update MDN ;)
Flags: needinfo?(khuey)
Assignee: nobody → szchen
blocking-b2g: --- → backlog
Attachment #8564880 - Flags: review?(htsai) → review+
https://hg.mozilla.org/mozilla-central/rev/42625647394f
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → 2.2 S6 (20feb)
Blocks: 1067629
blocking-b2g: backlog → ---
Comment on attachment 8564880 [details] [diff] [review]
Remove builtinclass of nsIMobileConnectionCallback

Bug caused by (feature/regressing bug #): Bug 1067629 need this patch
User impact if declined: Bug 1067629 cannot be uplifted
Testing completed: NA
Risk to taking this patch (and alternatives if risky): NA
String or UUID changes made by this patch: NA
Attachment #8564880 - Flags: approval-mozilla-b2g37?
blocking-b2g: --- → 2.2?
blocking-b2g: 2.2? → 2.2+
Attachment #8564880 - Flags: approval-mozilla-b2g37? → approval-mozilla-b2g37+
You need to log in before you can comment on or make changes to this bug.