Closed
Bug 1041626
Opened 10 years ago
Closed 10 years ago
Xray enumeration broken for [Unforgeable] interfaces
Categories
(Core :: DOM: Core & HTML, defect)
Tracking
()
RESOLVED
FIXED
mozilla34
People
(Reporter: bholley, Assigned: bholley)
References
Details
(Keywords: regression)
Attachments
(7 files, 2 obsolete files)
(deleted),
patch
|
bzbarsky
:
review+
Sylvestre
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
bzbarsky
:
review+
Sylvestre
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
bzbarsky
:
review+
Sylvestre
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
bzbarsky
:
review+
Sylvestre
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
bzbarsky
:
review+
Sylvestre
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
bzbarsky
:
review+
Sylvestre
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
bholley
:
review+
Sylvestre
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
Somehow this fell through the cracks. This basically means that enumerating Location objects over Xrays will skip all the methods.
Should be easy enough to fix. I'll write up and attach a patch.
Comment 1•10 years ago
|
||
Oops. This is totally my fault, plus lack of tests. :(
Assignee | ||
Comment 2•10 years ago
|
||
Assignee | ||
Comment 3•10 years ago
|
||
Attachment #8459834 -
Flags: review?(bzbarsky)
Assignee | ||
Comment 4•10 years ago
|
||
Attachment #8459835 -
Flags: review?(bzbarsky)
Comment 5•10 years ago
|
||
Comment on attachment 8459834 [details] [diff] [review]
Part 1 - Generalize XrayEnumerateAttributes. v1
r=me
Attachment #8459834 -
Flags: review?(bzbarsky) → review+
Comment 6•10 years ago
|
||
Comment on attachment 8459835 [details] [diff] [review]
Part 2 - Mirror the logic for attribute enumeration in method enumeration. v1
r=me
Attachment #8459835 -
Flags: review?(bzbarsky) → review+
Assignee | ||
Comment 7•10 years ago
|
||
The above patches were what was required to get the new XOWs working, but writing a mochitest for this uncovered more broken stuff. :-(
Patches coming up.
Assignee | ||
Comment 8•10 years ago
|
||
Attachment #8460395 -
Flags: review?(bzbarsky)
Assignee | ||
Comment 9•10 years ago
|
||
Attachment #8460396 -
Flags: review?(bzbarsky)
Assignee | ||
Comment 10•10 years ago
|
||
[Tracking Requested - why for this release]: Regression in FF33 with potential to break addon-compat. Fixes should be relatively low-risk and ready to land on Aurora this week.
tracking-firefox33:
--- → ?
Assignee | ||
Updated•10 years ago
|
Summary: XrayEnumerateProperties doesn't handle unforgeable methods → Xray enumeration broken for [Unforgeable] interfaces
Assignee | ||
Comment 11•10 years ago
|
||
Assignee | ||
Comment 12•10 years ago
|
||
Comment on attachment 8460395 [details] [diff] [review]
Part 3 - Stop bailing out before enumerating Unforgeable attributes. v1
Hm no this is actually wrong.
Attachment #8460395 -
Flags: review?(bzbarsky)
Comment 13•10 years ago
|
||
Comment on attachment 8460395 [details] [diff] [review]
Part 3 - Stop bailing out before enumerating Unforgeable attributes. v1
Won't this also enumerate the non-unforgeable bits on the object itself (i.e. when doing an OWNONLY enumeration)? If not, why not?
Flags: needinfo?(bobbyholley)
Comment 14•10 years ago
|
||
Comment on attachment 8460396 [details] [diff] [review]
Part 4 - Tests. v1
>+ realOwnProperties.splice(realOwnProperties.indexOf('toJSON'), 1);
I'd rather we added "toJSON" to xrayOwnProperties instead.
And we should repeat this test with window[0].document, which has non-own bits as well as own (unforgeable) ones.
r=me with that.
Attachment #8460396 -
Flags: review?(bzbarsky) → review+
Assignee | ||
Comment 15•10 years ago
|
||
Flags: needinfo?(bobbyholley)
Assignee | ||
Comment 16•10 years ago
|
||
Attachment #8460395 -
Attachment is obsolete: true
Attachment #8460396 -
Attachment is obsolete: true
Attachment #8460619 -
Flags: review?(bzbarsky)
Assignee | ||
Comment 17•10 years ago
|
||
Attachment #8460620 -
Flags: review?(bzbarsky)
Assignee | ||
Comment 18•10 years ago
|
||
Attachment #8460621 -
Flags: review?(bzbarsky)
Assignee | ||
Comment 19•10 years ago
|
||
Attachment #8460622 -
Flags: review?(bzbarsky)
Assignee | ||
Comment 20•10 years ago
|
||
Attachment #8460623 -
Flags: review+
Comment 21•10 years ago
|
||
Comment on attachment 8460619 [details] [diff] [review]
Part 3 - Make NativeProperties naming more consistent. v1
r=me
Attachment #8460619 -
Flags: review?(bzbarsky) → review+
Comment 22•10 years ago
|
||
Comment on attachment 8460620 [details] [diff] [review]
Part 4 - Use a macro in XrayEnumerateProperties to make the logic easier to follow. v1
I'd prefer the backslashes be lined up with each other.
r=me with that.
Attachment #8460620 -
Flags: review?(bzbarsky) → review+
Comment 23•10 years ago
|
||
Comment on attachment 8460621 [details] [diff] [review]
Part 5 - Only define unforgeable attributes on instances. v1
This only makes sense together with part 6, right? Might just want to fold them together.
r=me
Attachment #8460621 -
Flags: review?(bzbarsky) → review+
Comment 24•10 years ago
|
||
Comment on attachment 8460622 [details] [diff] [review]
Part 6 - Do a call to XrayEnumerateNativeProps when |type| is still set to eInstance. v1
r=me
Attachment #8460622 -
Flags: review?(bzbarsky) → review+
Assignee | ||
Comment 25•10 years ago
|
||
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/0c79419f126a
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/f0a660d32231
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/f5d41749f5ba
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/4def803dd9f9
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/a5462aeda9a3
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/b2e7f5ca4f95
https://hg.mozilla.org/mozilla-central/rev/0c79419f126a
https://hg.mozilla.org/mozilla-central/rev/f0a660d32231
https://hg.mozilla.org/mozilla-central/rev/f5d41749f5ba
https://hg.mozilla.org/mozilla-central/rev/4def803dd9f9
https://hg.mozilla.org/mozilla-central/rev/a5462aeda9a3
https://hg.mozilla.org/mozilla-central/rev/b2e7f5ca4f95
Status: NEW → RESOLVED
Closed: 10 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
QA Whiteboard: [qa-]
Assignee | ||
Comment 27•10 years ago
|
||
Comment on attachment 8460623 [details] [diff] [review]
Part 7 - Tests. v2 r=bz
This approval request applies to all the patches listed here.
Approval Request Comment
[Feature/regressing bug #]: bug 832014
[User impact if declined]: Small potential for addon compat issues
[Describe test coverage new/current, TBPL]: Automated test included. Landed on m-c.
[Risks and why]: Low-ish risk. This basically only affects Xrays (and thus frontend code + addons), and I think these patches strictly improve our story there.
[String/UUID change made/needed]: None.
Attachment #8460623 -
Flags: approval-mozilla-aurora?
Updated•10 years ago
|
Updated•10 years ago
|
Attachment #8460623 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Updated•10 years ago
|
Attachment #8460622 -
Flags: approval-mozilla-aurora+
Comment 28•10 years ago
|
||
Comment on attachment 8460621 [details] [diff] [review]
Part 5 - Only define unforgeable attributes on instances. v1
[Triage Comment]
Attachment #8460621 -
Flags: approval-mozilla-aurora+
Comment 29•10 years ago
|
||
Comment on attachment 8460620 [details] [diff] [review]
Part 4 - Use a macro in XrayEnumerateProperties to make the logic easier to follow. v1
[Triage Comment]
Attachment #8460620 -
Flags: approval-mozilla-aurora+
Updated•10 years ago
|
Attachment #8460619 -
Flags: approval-mozilla-aurora+
Comment 30•10 years ago
|
||
Comment on attachment 8459835 [details] [diff] [review]
Part 2 - Mirror the logic for attribute enumeration in method enumeration. v1
[Triage Comment]
Attachment #8459835 -
Flags: approval-mozilla-aurora+
Updated•10 years ago
|
Attachment #8459834 -
Flags: approval-mozilla-aurora-
Comment 31•10 years ago
|
||
Comment on attachment 8459834 [details] [diff] [review]
Part 1 - Generalize XrayEnumerateAttributes. v1
Approved because we are early in the aurora cycle.
Attachment #8459834 -
Flags: approval-mozilla-aurora- → approval-mozilla-aurora+
Comment 32•10 years ago
|
||
https://hg.mozilla.org/releases/mozilla-aurora/rev/fde6340c0cbb
https://hg.mozilla.org/releases/mozilla-aurora/rev/16c21a465ead
https://hg.mozilla.org/releases/mozilla-aurora/rev/3ff21bc2a669
https://hg.mozilla.org/releases/mozilla-aurora/rev/4bee07e2ba79
https://hg.mozilla.org/releases/mozilla-aurora/rev/e0a751a85239
https://hg.mozilla.org/releases/mozilla-aurora/rev/217d09d459e1
Updated•6 years ago
|
Component: DOM → DOM: Core & HTML
You need to log in
before you can comment on or make changes to this bug.
Description
•