Closed Bug 549440 Opened 12 years ago Closed 12 years ago

TM: Disallow embeddings reaching into our guts (part 2: jsobj.h, jsprvtd.h)

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: gal, Assigned: gal)

Details

(Whiteboard: fixed-in-tracemonkey)

Attachments

(1 file)

No description provided.
Remove js private header file dependencies from dom/*.h and content/*.h, especially nsContentUtils.h
Attached patch patchSplinter Review
Assignee: general → gal
Attachment #429593 - Flags: review?(jst)
This patch massively cuts down on recompilation time if any of the non-public js headers change.
The only remaining private header file outside xpconnect us is jstypedarray.h, but the header file that uses it supposedly is only used by quickstubs.
Er, isn't jscntxt.h used outside?  I certainly have scads of outside-JS changes in bug 548702 regarding jscntxt.h.  (I have some ideas on how to fix the jscntxt.h inclusion problem but haven't gotten to them yet.)
Uses outside are "fine" (minus total loss of modularity). Its uses in header files that kill compilation time, not occasional recompilation of a .cpp file outside js/src.
Attachment #429593 - Flags: review?(jst) → review+
http://hg.mozilla.org/tracemonkey/rev/1859f8c3cab7
Whiteboard: fixed-in-tracemonkey
http://hg.mozilla.org/mozilla-central/rev/1859f8c3cab7
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.