Closed
Bug 879917
Opened 11 years ago
Closed 10 years ago
the WebIDL parser should more gracefully handle dictionaries being defined twice.
Categories
(Core :: DOM: Core & HTML, defect)
Core
DOM: Core & HTML
Tracking
()
RESOLVED
FIXED
mozilla32
People
(Reporter: tbsaunde, Assigned: TYLin)
References
Details
(Whiteboard: [mentor=bzbarsky@mit.edu][lang=python][good first bug])
Attachments
(2 files, 3 obsolete files)
2.78 KB,
patch
|
TYLin
:
review+
|
Details | Diff | Splinter Review |
1.58 KB,
patch
|
TYLin
:
review+
|
Details | Diff | Splinter Review |
This can happen if you say accidentally add the webidl file to the list of files twice.
Comment 1•11 years ago
|
||
So the issue is that IDLScope.resolveIdentifierConflict does this: 268 if originalObject.tag == IDLInterfaceMember.Tags.Method and \ 269 newObject.tag == IDLInterfaceMember.Tags.Method: 270 return originalObject.addOverload(newObject) But if originalObject is an IDLDictionary, say, it has no .tag. Kyle, can/should we just use isinstance here instead?
Flags: needinfo?(khuey)
That seems reasonable to me.
Flags: needinfo?(khuey)
Comment 4•10 years ago
|
||
Need to land the fix for bug 946897 and then see what's left to do here...
Depends on: 946897
Updated•10 years ago
|
Whiteboard: [mentor=bzbarsky@mit.edu][lang=python][good first bug]
Assignee | ||
Comment 5•10 years ago
|
||
Is there anything left to do after bug 946897 was landed? If yes, I would like to take this as my first bug. Please tell me how to reproduce this issue. Thanks.
Assignee | ||
Updated•10 years ago
|
Flags: needinfo?(bzbarsky)
Assignee | ||
Updated•10 years ago
|
Assignee: nobody → tlin
Comment 6•10 years ago
|
||
Sorry for the lag; it was the weekend... Yes, there's something to do here. You can reproduce by adding these two lines to any WebIDL file: dictionary Foo {}; dictionary Foo {}; and then seeing the totally incomprehensible exception that gets thrown when you build in dom/bindings. If you want to work on this, that sounds great! I'm happy to answer any questions you have; response times should be smaller during the week. ;)
Flags: needinfo?(bzbarsky)
Summary: the WebIDL parser should more gracefully handle interfaces or dictionaries being defined twice. → the WebIDL parser should more gracefully handle dictionaries being defined twice.
Assignee | ||
Comment 7•10 years ago
|
||
Assignee | ||
Comment 8•10 years ago
|
||
Assignee | ||
Updated•10 years ago
|
Attachment #8417250 -
Flags: review?(bzbarsky)
Assignee | ||
Updated•10 years ago
|
Attachment #8417251 -
Flags: review?(bzbarsky)
Comment 9•10 years ago
|
||
Comment on attachment 8417250 [details] [diff] [review] part 1: Strip trailing whitespaces in WebIDL.py r=me
Attachment #8417250 -
Flags: review?(bzbarsky) → review+
Comment 10•10 years ago
|
||
Comment on attachment 8417251 [details] [diff] [review] part 2: Emit useful message on dictionary name collisions Shouldn't that be "or" instead of "and"? r=me with that change or an explanation of why it's "and".
Attachment #8417251 -
Flags: review?(bzbarsky) → review+
Assignee | ||
Comment 11•10 years ago
|
||
Attachment #8417250 -
Attachment is obsolete: true
Assignee | ||
Comment 12•10 years ago
|
||
Comment on attachment 8417799 [details] [diff] [review] part 1: Strip trailing whitespaces in WebIDL.py. Review of attachment 8417799 [details] [diff] [review]: ----------------------------------------------------------------- Carry over r+.
Attachment #8417799 -
Flags: review+
Assignee | ||
Updated•10 years ago
|
Attachment #8417799 -
Flags: review+
Assignee | ||
Comment 13•10 years ago
|
||
Attachment #8417251 -
Attachment is obsolete: true
Attachment #8417803 -
Flags: review+
Assignee | ||
Comment 14•10 years ago
|
||
Comment on attachment 8417799 [details] [diff] [review] part 1: Strip trailing whitespaces in WebIDL.py. Review of attachment 8417799 [details] [diff] [review]: ----------------------------------------------------------------- Carry over r+.
Attachment #8417799 -
Flags: review+
Assignee | ||
Comment 15•10 years ago
|
||
(In reply to Ting-Yu Lin [:TYLin] from comment #13) > Created attachment 8417803 [details] [diff] [review] > part 2: Emit useful message on dictionary name collisions. It should be "or". Using "and" generates exception on the following test case: callback Foo = void (int foo); dictionary Foo {}; bz, thanks for your review!
Assignee | ||
Comment 16•10 years ago
|
||
Attachment #8417803 -
Attachment is obsolete: true
Attachment #8417804 -
Flags: review+
Assignee | ||
Updated•10 years ago
|
Keywords: checkin-needed
Comment 17•10 years ago
|
||
Hi, could you provide a Try link. Suggestions for what to run if you haven't yet can be found here: https://wiki.mozilla.org/Sheriffing/How:To:Recommended_Try_Practices
Keywords: checkin-needed
Assignee | ||
Comment 18•10 years ago
|
||
Since I modified only the WebIDL parser, it should be sufficient to test the build status. Try result: https://tbpl.mozilla.org/?tree=Try&rev=fd05455cd50a
Assignee | ||
Updated•10 years ago
|
Keywords: checkin-needed
Comment 19•10 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/c9e5847428d5 https://hg.mozilla.org/integration/mozilla-inbound/rev/aceefcfd3708
Keywords: checkin-needed
Comment 20•10 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/c9e5847428d5 https://hg.mozilla.org/mozilla-central/rev/aceefcfd3708
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla32
Updated•5 years ago
|
Component: DOM → DOM: Core & HTML
You need to log in
before you can comment on or make changes to this bug.
Description
•