Commit Graph

2237 Commits

Author SHA1 Message Date
Bobby Holley
8160c96d4e Bug 658909 - Stop doing all the crazy stuff in GetWrappedNativeOfJSObject. r=mrbkap 2013-03-16 22:58:14 -07:00
Bobby Holley
5b8d755b22 Bug 658909 - Add a hack to support calling nohelper XPCWN methods without the proper |this|. r=mrbkap 2013-03-16 22:58:14 -07:00
Bobby Holley
b458ef37b2 Bug 658909 - Implement carefully-checked unwrapping in XPCCallContext. r=mrbkap 2013-03-16 22:58:14 -07:00
Bobby Holley
721351e660 Bug 658909 - Set args at XPCCallContext construct time in XPC_WN_GetterSetter. r=mrbkap
It's not clear to me why it's done this way, but it confuses our ability to
determine during wrapper lookup whether we're doing a set or a get. This aligns
the behavior with XPC_WN_CallMethod, including passing JSID_VOID for the name
(which is safe because XPCCallContext explicitly special-cases JSID_VOID and
doesn't call SetName in that case).
2013-03-16 22:58:13 -07:00
Bobby Holley
e04912b20e Bug 658909 - Initialize the same fields in both XPCCallContext constructors. r=mrbkap
This is a huge footgun. XPCCallContext is hot, but it's not too hot to be safe
here. Garbage XPCWN and JSObject pointers are bad.
2013-03-16 22:58:13 -07:00
Bobby Holley
a22cc9ffed Bug 658909 - Remove unnecessary ccx param. r=mrbkap 2013-03-16 22:58:13 -07:00
Bobby Holley
11ee47784a Bug 658909 - Make isSafeToUnwrap pseudo-dynamic for SOWs. r=mrbkap
This can go away as soon as XBL scopes are no longer behind a pref.
2013-03-16 22:58:13 -07:00
Bobby Holley
b3038807d1 Bug 658909 - Force |this| computation in SandboxCallableProxyHandler::call when using Xrays. r=bz
Comment says it all.
2013-03-16 22:58:12 -07:00
Bill McCloskey
a3cea08b3a Bug 759585 - Zones (r=jonco,bhackett,njn,dvander,luke,bz,mccr8,bholley) 2013-03-16 20:36:37 -07:00
Benoit Girard
fc10a7cfe4 Bug 851611 - Part 3: Rename headers. r=jrmuizel
--HG--
rename : tools/profiler/sampler.h => tools/profiler/GeckoProfiler.h
rename : tools/profiler/sps_sampler.h => tools/profiler/GeckoProfilerImpl.h
extra : rebase_source : 6ea7c660764a4390cdd8dd91561fff1d7bad6035
2013-03-18 15:25:50 +01:00
Jan de Mooij
ce7520efef Merge from mozilla-inbound.
--HG--
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEPointLightElement.cpp
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEPointLightElement.h
2013-03-14 10:50:28 +01:00
Jan de Mooij
feab4ed7e8 Merge from mozilla-central. 2013-03-13 11:38:41 +01:00
Jan de Mooij
c164527574 Merge from mozilla-central.
--HG--
rename : content/html/content/src/nsMediaFragmentURIParser.cpp => netwerk/base/src/nsMediaFragmentURIParser.cpp
rename : content/html/content/src/nsMediaFragmentURIParser.h => netwerk/base/src/nsMediaFragmentURIParser.h
2013-03-12 10:09:17 +01:00
Gregory Szorc
09e7b06723 Bug 844654 - Part 3: Remove now empty Makefile.in files; rs=khuey
--HG--
extra : rebase_source : 8de9c7f68a953e574dda22f8c14c2b2ca60444f9
2013-03-19 18:49:07 -07:00
Bobby Holley
30641e3a63 Bug 849730 - Let objectClassIs through for COWs. r=mrbkap 2013-03-13 14:48:59 -07:00
Mike Shal
9680b82df6 Bug 844654 - Part 2: Move MODULE to moz.build; rs=gps 2013-03-19 11:47:00 -07:00
Jan de Mooij
0ff1c79c80 Merge from mozilla-central. 2013-03-11 15:18:12 +01:00
Ms2ger
2cf07efa15 Bug 847195 - Make NamedNodeMap only deal with Attrs; r=khuey
--HG--
rename : dom/interfaces/core/nsIDOMNamedNodeMap.idl => dom/interfaces/core/nsIDOMMozNamedAttrMap.idl
2013-03-10 09:00:33 +01:00
Ms2ger
0b1de39abe Bug 825285 - Part b: Move ArchiveReader to Paris bindings, remove XPCOM goop; r=khuey 2013-03-10 08:57:14 +01:00
Jan de Mooij
8ff567ce1a Merge from mozilla-central. 2013-03-08 09:57:47 +01:00
Ed Morley
2b1775b4e9 Backed out changeset d195190adc48 (bug 851611)
--HG--
rename : tools/profiler/GeckoProfiler.h => tools/profiler/sampler.h
rename : tools/profiler/GeckoProfilerImpl.h => tools/profiler/sps_sampler.h
2013-03-18 14:10:30 +00:00
Benoit Girard
664cf994b4 Bug 851611 - Part 3: Rename headers. r=jrmuizel
--HG--
rename : tools/profiler/sampler.h => tools/profiler/GeckoProfiler.h
rename : tools/profiler/sps_sampler.h => tools/profiler/GeckoProfilerImpl.h
extra : rebase_source : 552fe1d3ff61d15b264aaf86f7c8cb4f4eff69d1
2013-03-18 14:41:02 +01:00
Jan de Mooij
381bda63c3 Bug 848374 - Have a single allocator per compartment for optimized stubs. r=djvj,njn 2013-03-07 11:42:24 +01:00
Jan de Mooij
a6fa56a8fe Merge from mozilla-central. 2013-03-07 10:39:16 +01:00
Peter Van der Beken
81ba7f5b84 Fix for bug 853136 (Prepare some tests for HTMLDocument using a WebIDL binding). r=bholley.
--HG--
extra : rebase_source : 0a19404b8d40075488568e179088e3c41ee8c4e4
2013-03-14 14:50:46 +01:00
Boris Zbarsky
b105f502e9 Bug 855582 part 2. Make the bindings' various spec arrays const, and make the jitinfo structs static. r=khuey 2013-04-02 20:20:38 -04:00
Jan de Mooij
ee146de3c3 Merge from mozilla-central. 2013-03-06 16:18:00 +01:00
Jan de Mooij
5b01371df1 Bug 846733 - Add baseline compiler memory reporters. r=djvj 2013-03-05 10:53:54 +01:00
Ryan VanderMeulen
2e0d51cb97 Backed out changeset e44bc308642a (bug 813901) and changeset 19f154ee6f54 (bug 850000) for bustage on a CLOSED TREE. 2013-03-13 13:22:14 -04:00
Jon Coppeard
1e656de13c Bug 853028 - GC: Fix some rooting issues found by static analysis r=terrence
--HG--
extra : rebase_source : a1d340a00516ae890c98fa7420497e85526823fc
2013-03-21 12:56:58 +00:00
Daniel Holbert
b76c363e13 Bug 849086: Remove unused *_CLASSNAME defines. r=bsmedberg 2013-03-15 10:52:10 -07:00
Bobby Holley
bcb7ce6f0a Bug 854019 - Continue checking the XBL bit if remote XUL disables XBL scopes. r=bz 2013-03-24 09:27:10 -07:00
Bobby Holley
014baaf697 Bug 853571 - Tests. r=bz 2013-03-24 09:27:10 -07:00
Bobby Holley
79bc02dabd Bug 853571 - Do special detection for sandboxPrototype to make sure the source gets set up right in postMessage. r=bz 2013-03-24 09:27:10 -07:00
Terrence Cole
2ae4b3c000 Bug 851340 - Make the rooting of scripts in nsXULPrototypeCache more efficient; r=smaug 2013-03-19 10:20:21 -07:00
Terrence Cole
4e5da394ec Bug 848608 - Make eagerlyTraceWeakMaps an enum; r=billm
--HG--
extra : rebase_source : 20558f611dda644f966d4660b88895a0cbc5c7d1
2013-03-07 10:49:30 -08:00
Bobby Holley
70a841abe2 Bug 813901 - Tests. r=mrbkap 2013-03-13 10:01:36 -07:00
Eddy Bruel
000c08fe71 Bug 789897 - Implement isExtensible and preventExtensions traps for proxies, including scriptable direct proxies, and in the various wrapper classes. Also move non-static JSObject::preventExtensions to static ObjectImpl::preventExtensions, for handle correctness. Patch is a semi-tag-team effort with jwalden. r=jwalden, r=ejpbruel, r=bholley, r=two-turtle-doves-and-a-partridge-in-a-pear-tree
--HG--
extra : rebase_source : 156d2c22499372fceb60d130e363a3685e68b9fc
2013-03-22 19:43:03 -07:00
Kyle Machulis
c79ccc0693 Backout for changeset 03452b187c14 (Bug 855465) due to bustage on a CLOSED TREE; r=qdot 2013-03-29 15:12:58 -07:00
Kyle Machulis
a59d40f143 Bug 855465 - Add emacs python mode comments to moz.build files; r=gps
--HG--
extra : rebase_source : 004a756492323e1a049586e85b3be5037159df20
2013-03-29 13:56:18 -07:00
Ryan VanderMeulen
957687a97e Backed out bug 789897 due to regressions. 2013-03-29 14:07:32 -04:00
Terrence Cole
706b867d6e Bug 765432 - Make JS_IsAboutToBeFinalized indirect; r=bholley,billm 2013-03-28 13:27:29 -07:00
Igor Bukanov
6e38ffd2b4 Bug 743436 - remove XPCJSRuntime::mJSCycleCollectionContext and related code. r=peterv
The patch removes no longer used XPCJSRuntime::mJSCycleCollectionContext,
nsXPConnect::mCycleCollectionContext and related code to create/destroy
contexts. As that made nsCycleCollectionJSRuntime::FinishTraverse() empty
in all cases I removed that method as well.
2013-02-27 11:33:12 -08:00
Bobby Holley
dd167cf5db Bug 856257 - Clean up nsXPConnect sandbox API a bit. r=mrbkap 2013-04-02 09:45:01 -07:00
Matt Brubeck
0112a4cd84 Back out bug 839103 for build errors on a CLOSED TREE 2013-04-02 08:18:27 -07:00
Nathan Froyd
2ff029b601 Bug 839103 - part 3 - send StyleSheet{Added,Removed} chrome notifications when stylesheets are added/removed; r=bz 2013-03-27 14:16:50 -04:00
Bobby Holley
ccc319c140 Bug 825697 - Check for all wrapper types. r=mrbkap 2013-03-11 10:13:25 -07:00
Neil Deakin
615637590a Bug 407983, add clipboard events constructor, r=smaug 2013-03-11 11:49:56 -04:00
Bill McCloskey
50f50ed54e Bug 846890 - Avoid check for native anonymous content when possible (r=bholley) 2013-03-08 18:49:36 -08:00
Gregory Szorc
ed102f4876 Merge mozilla-central into build-system 2013-03-13 08:20:09 -07:00
Gregory Szorc
94e8454958 Merge mozilla-central into build-system
dom/interfaces/svg/Makefile.in and dom/media/Makefile.in had merge
conflicts. They were resolved by hand. The former needed 2 IDLs removed.
The latter had a context conflict for EXPORTS_NAMESPACES.
2013-03-12 13:04:55 -07:00
Gregory Szorc
7bb3ee056b Bug 818246 - Part 4: Move XPIDLSRCS into moz.build (auto); rs=glandium
This is the result of running
|mach mozbuild-migrate --list XPIDLSRCS SDK_XPIDLSRCS XPIDL_SOURCES| and
reverting xpcom/sample/*.
2013-03-12 10:17:46 -07:00
Benjamin Peterson
6878c00c80 Bug 779233 - Count script filenames as part of script source memory. r=njn
--HG--
extra : rebase_source : f8c6e2d0867f172a68bac2242dd401db89c92236
2013-03-12 21:56:57 -05:00
Julian Seward
7c8de49023 Bug 779291: Implement SPS stackwalk using the breakpad unwinder. r=bgirard,glandium 2013-03-10 23:00:23 +01:00
Gene Lian
f70fb08d9a Bug 852911 - B2G MMS: fail to expose correct nsIDOMMozMmsMessage.attachments. r=smaug 2013-03-21 14:49:23 +08:00
Boris Zbarsky
4549dd5886 Bug 776536 part 4. Turn on WebIDL bindings for NodeIterator and TreeWalker. r=peterv
The behavior here is a bit weird because Document is still not a
WebIDL object, so calling createNodeIterator or createTreeWalker via
an Xray will call the XPCOM versions of those methods.  That means
that I can't just disable XPCOM-based wrapping for TreeWalker and
NodeIterator altogether, unfortunately, which means a web page could
try stashing a TreeWalker in something like userdata and then getting
it back and end up wrapping it as an XPCOM object the second time.

I could "fix" that by adding a wrapper cache and whatnot, I guess, if
desired...  But the problem will go away once we convert Document in
any case.
2013-02-28 12:56:42 -05:00
Boris Zbarsky
09556095dd Bug 843261. Add support for sequence<DOMString> arguments in WebIDL callbacks. r=peterv
This does allow people to accidentally hit the slower path through use
of non-const strings, but I think that's OK now that we're mostly
autogenerating this stuff
2013-02-28 12:56:41 -05:00
Ryan VanderMeulen
ebcc7ae06a Backed out 7 changesets (bug 832920, bug 776536, bug 843261) for mochitest-a11y assertions on a CLOSED TREE.
--HG--
rename : content/base/src/NodeIterator.cpp => content/base/src/nsNodeIterator.cpp
rename : content/base/src/NodeIterator.h => content/base/src/nsNodeIterator.h
rename : content/base/src/TreeWalker.cpp => content/base/src/nsTreeWalker.cpp
rename : content/base/src/TreeWalker.h => content/base/src/nsTreeWalker.h
2013-02-28 14:41:30 -05:00
Olli Pettay
fee019f92c Bug 845631 - Remove nsXMLHttpProgressEvent, r=sicking
--HG--
extra : rebase_source : e5c6e80fbb656782bfe0f530c778cda9d9f97f0f
2013-02-28 20:53:04 +02:00
Boris Zbarsky
30f64b6cf1 Bug 776536 part 4. Turn on WebIDL bindings for NodeIterator and TreeWalker. r=peterv
The behavior here is a bit weird because Document is still not a
WebIDL object, so calling createNodeIterator or createTreeWalker via
an Xray will call the XPCOM versions of those methods.  That means
that I can't just disable XPCOM-based wrapping for TreeWalker and
NodeIterator altogether, unfortunately, which means a web page could
try stashing a TreeWalker in something like userdata and then getting
it back and end up wrapping it as an XPCOM object the second time.

I could "fix" that by adding a wrapper cache and whatnot, I guess, if
desired...  But the problem will go away once we convert Document in
any case.
2013-02-28 12:56:42 -05:00
Boris Zbarsky
7015a00262 Bug 843261. Add support for sequence<DOMString> arguments in WebIDL callbacks. r=peterv
This does allow people to accidentally hit the slower path through use
of non-const strings, but I think that's OK now that we're mostly
autogenerating this stuff
2013-02-28 12:56:41 -05:00
Ms2ger
3813557cac Merge m-i to b-s. 2013-02-28 14:46:10 +01:00
Gregory Szorc
f0b7e3972c Merge mozilla-central into build-system
There were merges in configure.in and some Makefile.in. None had any
conflicts. I spot verified the Makefile.in changes and confirmed that
the changes did not touch any DIRS* variables.
2013-02-27 10:03:52 -08:00
Ms2ger
cd9c6150fe Merge m-c to b-s. 2013-02-26 19:09:25 +01:00
Gregory Szorc
faf262c4ee Merge mozilla-central into build-system
Only conflict was configure.in amd was due to context, not
changed lines themselves.
2013-02-25 22:09:18 -08:00
Gregory Szorc
c1b5e29e19 Bug 784841 - Part 18s: Convert /js; r=glandium 2013-02-25 12:47:22 -08:00
Bobby Holley
c014987e4f Bug 836301 - Hoist some assertions, remove a bunch of no-op trap overrides, and add assertions that we've entered our policy. r=mrbkap 2013-02-25 13:54:18 -08:00
Bobby Holley
f84dddd71f Bug 836301 - Hoist enter() calls from {Xray,}Wrapper::foo into Proxy::foo. r=mrbkap 2013-02-25 13:54:18 -08:00
Bobby Holley
83a57c8d91 Bug 836301 - Introduce an RAII class for entering policies. r=mrbkap
This will allow us to make some hard assertions that a given policy has been
entered exactly once.
2013-02-25 13:54:18 -08:00
Bobby Holley
a1a88275ee Bug 836301 - Add Special handling to allow us to call enter() for defineProperty on Xrays. r=mrbkap 2013-02-25 13:54:17 -08:00
Bobby Holley
6f2c3cdc97 Bug 836301 - Stop using JSRESOLVE_ASSIGNING to determine GET vs SET. r=mrbkap
This is just a heuristic, anyway, and some of the usage is downright broken.
There are two cases here:

1 - Deciding what to do for get{Own,}PropertyDescriptor. In these cases, we can
just enter with GET and rely on the filtering machinery to filter out dangerous
setters for security wrappers.

2 - Custom Xray props. None of these make sense in a |set| context. In fact,
    they generally have null setters anyway, so we can just assume GET.

The policy-entering code in XrayWrapper is super haphazard. We'll get rid of it
entirely later in these patches.
2013-02-25 13:54:17 -08:00
L. David Baron
9b9f1bc887 Bug 404077: Adjust annotations of expected assertions. CLOSED TREE 2013-02-27 17:58:48 -08:00
Bobby Holley
440bea3fd7 Bug 843711 - Fix up new |Components| culprits in test suite. r=mccr8 2013-02-25 10:43:03 -08:00
David Zbarsky
5cc0fcdcdf Bug 847007: Remove nsIContent includes r=Ms2ger 2013-03-21 20:05:20 -04:00
Jon Coppeard
8d5fd16382 Bug 848395 - GC: Move Rooted to JS namespace - rename js::Rooted to JS::Rooted outside SpiderMonkey r=terrence
--HG--
extra : rebase_source : 35cbf3cc4da4598c2e9e6975028ef397718849db
2013-03-06 16:41:43 +00:00
Ed Morley
fe417ad697 Backed out changeset 28ef4bdff455 (bug 848395) 2013-03-07 13:03:35 +00:00
Gabor Krizsanits
4995dd1d6c Bug 820170 - nsDOMEventTarget holds a global. r=smaug 2013-04-04 11:30:36 +02:00
Gabor Krizsanits
2c40adaf82 Bug 820170 - JunkScope. r=bholley 2013-04-04 11:27:43 +02:00
Gabor Krizsanits
580557f44a Bug 820170 - GetNativeForGlobal. r=bholley 2013-04-04 11:27:42 +02:00
Gabor Krizsanits
fa14b1b757 Bug 820170 - Weak ref support for globals. r=bholley 2013-04-04 11:27:40 +02:00
Gabor Krizsanits
aeacc33406 Bug 820170 - assert in XPCWrappedNativeScope::SetGlobal. r=bholley 2013-04-04 11:27:39 +02:00
Gabor Krizsanits
c38a4cd7da Bug 820170 - Turning BackstagePass into non-singleton. r=bholley 2013-04-04 11:27:38 +02:00
Gabor Krizsanits
76d19a29d3 Bug 820170 - SandboxPrivate. r=bholley 2013-04-04 11:27:36 +02:00
Jon Coppeard
fa71007e65 Bug 848395 - GC: Move Rooted to JS namespace - rename js::Rooted to JS::Rooted outside SpiderMonkey r=terrence
--HG--
extra : rebase_source : 866879df05e3ec3f8e93570eb3f6b71103636b41
2013-03-06 16:41:43 +00:00
Masatoshi Kimura
dd29852063 Bug 841289 - Remove prefable option from WebIDL codegen. r=bz 2013-03-06 07:09:38 +09:00
Olli Pettay
e5921ddec1 Bug 822399 - Make Event to use Paris bindings, r=peterv 2013-03-09 13:34:29 +02:00
Bill McCloskey
ba07637ef2 Back out bug 846890 for reftest orange 2013-03-08 21:27:25 -08:00
Bill McCloskey
81426160a3 Bug 846890 - Avoid check for native anonymous content when possible (r=bholley) 2013-03-08 18:49:36 -08:00
Zack Weinberg
68dac0c8ba Bug 847181: prune unused printing-related nsresult codes, make printing error codes available in Components.results, and improve English of printing error messages. r=smaug 2013-03-08 21:45:14 -05:00
Tom Schuster
045cb0fba7 Bug 828462 - Root Proxy/Wrapper in the browser. r=terrence,bz 2013-03-21 23:23:48 +01:00
Tom Schuster
b8e3b65fa7 Bug 828462 - Root Proxy/Wrapper delete. r=terrence 2013-03-21 23:23:48 +01:00
Tom Schuster
097f3a1110 Bug 828462 - Root Proxy/Wrapper getOwnPropertyNames and keys. r=terrence 2013-03-21 23:23:47 +01:00
Tom Schuster
5a05e27565 Bug 828462 - Root Proxy/Wrapper defineProperty. r=terrence 2013-03-21 23:23:47 +01:00
Tom Schuster
b67362a266 Bug 828462 - Root Proxy/Wrapper get(Own)PropertyDescriptor. r=terrence 2013-03-21 23:23:47 +01:00
Bobby Holley
d9f2f2585d Bug 844783 - Disable XBL scopes for XUL-whitelisted domains. r=bz 2013-03-21 09:33:34 -07:00
Bobby Holley
fdbf86827c Bug 851895 - Tests. r=mrbkap 2013-03-21 08:20:46 -07:00
Bobby Holley
087d013a2e Bug 851895 - Expand the this-fixup hack to include Cu. r=mrbkap 2013-03-21 08:20:46 -07:00
Bobby Holley
4fe046507c Bug 851895 - Don't assert against a failure in CanCallNow. r=mrbkap
This can definitely happen now if the |this| object is wrong. It's possible
that we should be checking this earlier, but as the code stands this assertion
is incorrect.
2013-03-21 08:20:46 -07:00
Bobby Holley
28a4f94860 Bug 658909 - Tests. r=mrbkap 2013-03-21 08:20:45 -07:00
Bobby Holley
4dcdfea519 Bug 658909 - Port tearoff-handling guts of GWNOJO to XPCCallContext and remove GWNOJO. r=mrbkap 2013-03-21 08:20:45 -07:00
Bobby Holley
b858cf9698 Bug 658909 - Remove GWNOJO from PreserveWrapper. r=mrbkap 2013-03-21 08:20:45 -07:00
Bobby Holley
24dbc1109a Bug 658909 - Remove GWNOJO from AccessCheck. r=mrbkap 2013-03-21 08:20:45 -07:00
Bobby Holley
7733ab8004 Bug 658909 - Remove GWNOJO from nsXPConnect. r=mrbkap 2013-03-21 08:20:44 -07:00
Bobby Holley
a1c89d029d Bug 658909 - Remove GWNOJO from XPCVariant. r=mrbkap
The old code seems to be deciding whether we have a double-wrapped object by
checking _either_ the rv of GWNOJO _or_ the potential slim wrapper. This is
nonsensical, because double-wrapped objects are never slim wrappers.
Furthermore, that variable here is named 'proto', which further suggests
that this code is nonsensical. So let's just check for WNs.

Also, it seems pretty wack to be innerizing here before storing the jsval,
but I'm going to leave that for now.
2013-03-21 08:20:44 -07:00
Bobby Holley
9c4154e6bc Bug 658909 - Remove GWNOJO from XPCJSID. r=mrbkap 2013-03-21 08:20:44 -07:00
Bobby Holley
b65e2ecba7 Bug 658909 - Remove GWNOJO from JSValToXPCException. r=mrbkap 2013-03-21 08:20:44 -07:00
Bobby Holley
fb94cdfee3 Bug 658909 - Remove GWNOJO from JSObject2NativeInterface. r=mrbkap 2013-03-21 08:20:44 -07:00
Bobby Holley
fa6d248e50 Bug 658909 - Remove GWNOJO for helper stubs. r=mrbkap 2013-03-21 08:20:43 -07:00
Bobby Holley
11b5031023 Bug 658909 - Remove GWNOJO from MarkWrappedNative. r=mrbkap 2013-03-21 08:20:43 -07:00
Bobby Holley
a39e82c6c7 Bug 658909 - Add a new, much simpler API for getting WNs from JS objects. r=mrbkap 2013-03-21 08:20:43 -07:00
Bobby Holley
d13583047f Bug 658909 - Stop doing all the crazy stuff in GetWrappedNativeOfJSObject. r=mrbkap 2013-03-21 08:20:43 -07:00
Bobby Holley
b62d1486bb Bug 658909 - Add a hack to support calling nohelper XPCWN methods without the proper |this|. r=mrbkap 2013-03-21 08:20:43 -07:00
Bobby Holley
93d4b3e2bf Bug 658909 - Implement carefully-checked unwrapping in XPCCallContext. r=mrbkap 2013-03-21 08:20:42 -07:00
Bobby Holley
5fcbe112e7 Bug 658909 - Set args at XPCCallContext construct time in XPC_WN_GetterSetter. r=mrbkap
It's not clear to me why it's done this way, but it confuses our ability to
determine during wrapper lookup whether we're doing a set or a get. This aligns
the behavior with XPC_WN_CallMethod, including passing JSID_VOID for the name
(which is safe because XPCCallContext explicitly special-cases JSID_VOID and
doesn't call SetName in that case).
2013-03-21 08:20:42 -07:00
Bobby Holley
17ce8369ba Bug 658909 - Initialize the same fields in both XPCCallContext constructors. r=mrbkap
This is a huge footgun. XPCCallContext is hot, but it's not too hot to be safe
here. Garbage XPCWN and JSObject pointers are bad.
2013-03-21 08:20:42 -07:00
Bobby Holley
87e5d84514 Bug 658909 - Remove unnecessary ccx param. r=mrbkap 2013-03-21 08:20:42 -07:00
Bobby Holley
5c2f6cfd84 Bug 658909 - Make isSafeToUnwrap pseudo-dynamic for SOWs. r=mrbkap
This can go away as soon as XBL scopes are no longer behind a pref.
2013-03-21 08:20:41 -07:00
Bobby Holley
2bf214ff20 Bug 658909 - Force |this| computation in SandboxCallableProxyHandler::call when using Xrays. r=bz
Comment says it all.
2013-03-21 08:20:41 -07:00
Bobby Holley
3cebc24c68 Bug 853283 - Grab the window directly from the navigator in nsNavigatorSH::NewResolve. r=mrbkap 2013-03-21 08:20:41 -07:00
Ryan VanderMeulen
59aa9e54e3 Backed out changeset 55d19e574b86 (bug 853283) for Windows debug bustage on a CLOSED TREE. 2013-03-21 15:25:14 -04:00
Ryan VanderMeulen
75a33a8191 Backed out 22 changesets (bug 658909) for Windows debug bustage. 2013-03-21 15:24:54 -04:00
Ryan VanderMeulen
9bfb899cee Backed out 3 changesets (bug 851895) for Windows debug bustage. 2013-03-21 15:24:04 -04:00
Ryan VanderMeulen
f2110c1812 Backed out changesets 775abfe4876f and 1b75fab8561b (bug 844783) under suspicion of breaking Windows debug builds on a CLOSED TREE. 2013-03-21 14:15:31 -04:00
Mike Shal
c2a9341a2e Bug 852534 - Remove GRE_MODULE from Makefile.in; r=gps 2013-03-21 08:41:00 -07:00
Bobby Holley
b9ca3f72f3 Bug 844783 - Disable XBL scopes for XUL-whitelisted domains. r=bz 2013-03-21 09:33:34 -07:00
Bobby Holley
e83099fd69 Bug 851895 - Tests. r=mrbkap 2013-03-21 08:20:46 -07:00
Bobby Holley
756ba16356 Bug 851895 - Expand the this-fixup hack to include Cu. r=mrbkap 2013-03-21 08:20:46 -07:00
Bobby Holley
a34d52b79e Bug 851895 - Don't assert against a failure in CanCallNow. r=mrbkap
This can definitely happen now if the |this| object is wrong. It's possible
that we should be checking this earlier, but as the code stands this assertion
is incorrect.
2013-03-21 08:20:46 -07:00
Bobby Holley
f09db0c385 Bug 658909 - Tests. r=mrbkap 2013-03-21 08:20:45 -07:00
Bobby Holley
6e76c314c6 Bug 658909 - Port tearoff-handling guts of GWNOJO to XPCCallContext and remove GWNOJO. r=mrbkap 2013-03-21 08:20:45 -07:00
Bobby Holley
02780e6be7 Bug 658909 - Remove GWNOJO from PreserveWrapper. r=mrbkap 2013-03-21 08:20:45 -07:00
Bobby Holley
5dd8152ac6 Bug 658909 - Remove GWNOJO from AccessCheck. r=mrbkap 2013-03-21 08:20:45 -07:00
Bobby Holley
7b7ed3edeb Bug 658909 - Remove GWNOJO from nsXPConnect. r=mrbkap 2013-03-21 08:20:44 -07:00
Bobby Holley
92e5a036c5 Bug 658909 - Remove GWNOJO from XPCVariant. r=mrbkap
The old code seems to be deciding whether we have a double-wrapped object by
checking _either_ the rv of GWNOJO _or_ the potential slim wrapper. This is
nonsensical, because double-wrapped objects are never slim wrappers.
Furthermore, that variable here is named 'proto', which further suggests
that this code is nonsensical. So let's just check for WNs.

Also, it seems pretty wack to be innerizing here before storing the jsval,
but I'm going to leave that for now.
2013-03-21 08:20:44 -07:00
Bobby Holley
59e03695ec Bug 658909 - Remove GWNOJO from XPCJSID. r=mrbkap 2013-03-21 08:20:44 -07:00
Bobby Holley
ed16fdf0fe Bug 658909 - Remove GWNOJO from JSValToXPCException. r=mrbkap 2013-03-21 08:20:44 -07:00
Bobby Holley
1bb0fe7c95 Bug 658909 - Remove GWNOJO from JSObject2NativeInterface. r=mrbkap 2013-03-21 08:20:44 -07:00
Bobby Holley
c5dc21550e Bug 658909 - Remove GWNOJO for helper stubs. r=mrbkap 2013-03-21 08:20:43 -07:00
Bobby Holley
1af3565955 Bug 658909 - Remove GWNOJO from MarkWrappedNative. r=mrbkap 2013-03-21 08:20:43 -07:00
Bobby Holley
b18fe7a48a Bug 658909 - Add a new, much simpler API for getting WNs from JS objects. r=mrbkap 2013-03-21 08:20:43 -07:00
Bobby Holley
60293a6469 Bug 658909 - Stop doing all the crazy stuff in GetWrappedNativeOfJSObject. r=mrbkap 2013-03-21 08:20:43 -07:00
Bobby Holley
a7f73d651b Bug 658909 - Add a hack to support calling nohelper XPCWN methods without the proper |this|. r=mrbkap 2013-03-21 08:20:43 -07:00
Bobby Holley
867314402d Bug 658909 - Implement carefully-checked unwrapping in XPCCallContext. r=mrbkap 2013-03-21 08:20:42 -07:00
Bobby Holley
f7e0eaeb81 Bug 658909 - Set args at XPCCallContext construct time in XPC_WN_GetterSetter. r=mrbkap
It's not clear to me why it's done this way, but it confuses our ability to
determine during wrapper lookup whether we're doing a set or a get. This aligns
the behavior with XPC_WN_CallMethod, including passing JSID_VOID for the name
(which is safe because XPCCallContext explicitly special-cases JSID_VOID and
doesn't call SetName in that case).
2013-03-21 08:20:42 -07:00
Bobby Holley
a426c37549 Bug 658909 - Initialize the same fields in both XPCCallContext constructors. r=mrbkap
This is a huge footgun. XPCCallContext is hot, but it's not too hot to be safe
here. Garbage XPCWN and JSObject pointers are bad.
2013-03-21 08:20:42 -07:00
Bobby Holley
09e256a90d Bug 658909 - Remove unnecessary ccx param. r=mrbkap 2013-03-21 08:20:42 -07:00
Bobby Holley
d6a9021608 Bug 658909 - Make isSafeToUnwrap pseudo-dynamic for SOWs. r=mrbkap
This can go away as soon as XBL scopes are no longer behind a pref.
2013-03-21 08:20:41 -07:00
Bobby Holley
0ead2198ad Bug 658909 - Force |this| computation in SandboxCallableProxyHandler::call when using Xrays. r=bz
Comment says it all.
2013-03-21 08:20:41 -07:00
Bobby Holley
b3f7f775a5 Bug 853283 - Grab the window directly from the navigator in nsNavigatorSH::NewResolve. r=mrbkap 2013-03-21 08:20:41 -07:00
Luke Wagner
e48f129191 Bug 840282 - OdinMonkey (sr=dmandelin)
--HG--
extra : rebase_source : 4a3869dca32755abb58bbd3d9a06599e61b397f2
2013-03-15 02:29:02 -07:00
Aryeh Gregor
2402979f16 Bug 801562 - Remove Node.isSupported; r=bz
--HG--
rename : content/svg/content/test/test_isSupported.xhtml => content/svg/content/test/test_hasFeature.xhtml
2013-03-15 12:21:52 +02:00
Gene Lian
83b9eea84a Bug 844431 - B2G MMS: provide nsIDOMMobileMessageManager interface (with sendMMS() first) (part 6, dispatch MMS events). r=vicamo,mounir sr=sicking a=leo+ 2013-03-09 15:22:42 +08:00
Gene Lian
1d6559a747 Bug 844431 - B2G MMS: provide nsIDOMMobileMessageManager interface (with sendMMS() first) (part 4-2, nsIMmsService.send()). r=vicamo a=leo+ 2013-03-09 15:22:25 +08:00
Gene Lian
1346b0a8be Bug 844431 - B2G MMS: provide nsIDOMMobileMessageManager interface (with sendMMS() first) (part 3-1, s/nsISmsRequest/nsIMobileMessageCallback). r=vicamo a=leo+
--HG--
rename : dom/mobilemessage/interfaces/nsISmsRequest.idl => dom/mobilemessage/interfaces/nsIMobileMessageCallback.idl
2013-03-09 15:22:02 +08:00
Gene Lian
b77e6d922c Bug 844431 - B2G MMS: provide nsIDOMMobileMessageManager interface (with sendMMS() first) (part 2, nsIDOMMozMmsMessage). r=vicamo,mounir,mrbkap sr=sicking a=leo+ 2013-03-09 15:21:55 +08:00
Bobby Holley
71b63fdffa Bug 850517 - Support named window access via Xray. r=mrbkap 2013-03-14 22:38:26 -07:00
Peter Van der Beken
410cee5e49 Fix for bug 844225 (Remove some DOMCI and quickstubs). r=bz. 2013-01-10 10:54:46 +01:00
L. David Baron
a144cc1c82 Bug 404077: Use navigator.platform.startsWith rather than navigator.platform.indexOf, at Jesse's suggestion. 2013-02-26 22:23:08 -08:00
Bobby Holley
3ee5ff0ef1 Bug 845201 - Pass mayThrow=true to iterate. r=mrbkap
We only want fallback behavior here if the policy decides to fail silently. If
the policy passes *bp == false, we want to just throw.
2013-02-26 16:41:55 -08:00
Bobby Holley
2473e41a58 Bug 834732 - Assert proper cx stack handling in WrapperFactory::Rewrap. r=mrbkap 2013-02-26 11:04:13 -08:00
Bobby Holley
1ffc542460 Bug 834732 - Implement stricter cx handling in xpc_EvalInSandbox. r=mrbkap 2013-02-26 11:04:11 -08:00
Bobby Holley
51ba6ef50d Bug 834732 - Make nsCxPusher.Push(JSContext*) infallible. r=mrbkap
We leave the nsIDOMEventTarget* versions fallible for now, but this makes the
common case a lot simpler. Note that this means that pushing a null JSContext,
a bug, is no longer handled at runtime. But I think we should just assert
against it, since there are already callers that don't check the return value.
2013-02-26 11:04:11 -08:00
Bobby Holley
9190ce39d5 Bug 834732 - Remove PushBehavior. r=mrbkap
Now that we only have ALWAYS_PUSH and ASSERT_SCRIPT_CONTEXT, we have uniform
release-mode behavior everywhere. Remove the crap.
2013-02-26 11:04:11 -08:00
Bobby Holley
997dcc7d65 Bug 834732 - Get rid of footgun bool param for nsCxPusher and use an explicit enum. r=mrbkap
The goal here is to get rid of this crap entirely, and make nsCxPusher always
push. But that's a scary change, so we do it in chunks. This patch, in particular,
should have zero behavioral change. This means preserving some very wrong behavior.
For instance, currently SafeAutoJSContext never pushes a damn thing, because the
safe JSContext doesn't have an associated nsIScriptContext. We preserve this
behavior, and in fact convert various similarly-buggy consumers to
SafeAutoJSContext, so that we can hoist the behavioral change into a subsequent
patch.
2013-02-26 11:04:09 -08:00
Bobby Holley
3ed822eacf Bug 812693 - Remove GetJSObjectOfWrapper. r=mrbkap 2013-02-26 08:15:44 -08:00
Richard Newman
f16ea3e459 Backed out changeset cc45fdc389df (Bug 779291) for breaking Mac Android builds. 2013-03-12 00:14:52 -07:00
Nicholas Nethercote
a2434f94d8 Bug 842438 (part 1) - Remove @line support from SpiderMonkey. r=benjamin.
--HG--
extra : rebase_source : 38502ad54c97a0e16e6396f9f39df31b73d0e289
2013-03-11 14:27:34 -07:00
Masatoshi Kimura
e5e5a90814 Bug 848339 - Remove the vestigial boolean outparam from nsWrapperCache::WrapObject. r=bz 2013-03-12 08:03:47 +09:00
Bobby Holley
4b67b8b7c1 Bug 809674 - Tests. r=me 2013-03-11 14:45:21 -07:00
Bobby Holley
11c07cabce Bug 809652 - Tests. r=jorendorff 2013-03-11 14:45:21 -07:00
Bobby Holley
f41fb0aa30 Bug 806751 - Crashtest. r=me 2013-03-11 14:45:21 -07:00
Bobby Holley
1c7f0daec3 Bug 805807 - Tests. r=mrbkap 2013-03-11 14:45:20 -07:00
Bobby Holley
4ea6146b51 Bug 786142 - Crashtest. r=me 2013-03-11 14:45:18 -07:00
Bobby Holley
90194b5e74 Bug 854510 - Convert expected assertion into a 0-1 range. r=RyanVM 2013-03-26 09:09:04 -07:00
Bobby Holley
bc6db2a364 Bug 854558 - Enforce __exposedProps__ for Sandboxes. r=gabor 2013-03-26 09:08:29 -07:00
Jan Varga
8ed93ed02a Bug 767944 - Implement a manager for centralized quota and storage handling. r=bent 2013-03-26 12:13:17 +01:00
Masatoshi Kimura
b1f455df2c Bug 842372 - Part 2: Hide getUserData and setUserData from content. r=bz 2013-02-23 13:46:06 +09:00
William Chen
f3658e2a5e Bug 783129 - Implementation of document.register without shadow DOM support. r=mrbkap 2012-11-01 11:18:08 -07:00
Trevor Saunders
7c8cb0d304 bug 833164 - consolodate the various makeDepend things in the tree r=ted 2013-02-14 07:06:16 -05:00
L. David Baron
57d19fbb86 Bug 404077: Annotate known assertions in mochitests. 2013-02-25 18:39:21 -08:00
Ryan VanderMeulen
1ce2c3fc86 Backed out 5 changesets (bug 790732) for talos-other hangs/crashes on a CLOSED TREE. 2013-03-05 15:44:15 -05:00
Boris Zbarsky
7039e84fa4 Remove no longer used NodeIterator quickstubs. No bug. r=peterv 2013-03-05 13:42:06 -05:00
Bobby Holley
2e00ecfa83 Bug 790732 - Omit Components object for content scopes. r=mrbkap 2013-03-05 10:02:00 -08:00
Bobby Holley
cf88b2614c Bug 790732 - Remove Components warning and Telemetry. r=mrbkap 2013-03-05 10:01:59 -08:00
Bobby Holley
d80a23a7e1 Bug 790732 - Stop attaching Components in InitClasses. r=mrbkap
This method is larely deprecated. The only two consumers are JSD and the setup
for the safe JSContext, neither of which use system principal and thus neither
of which should have |Components|.
2013-03-05 10:01:59 -08:00
Bobby Holley
b8d46855f4 Bug 790732 - Remove the aTarget parameter from AttachComponentsObject. r=mrbkap
I added this when I thought we'd be defining Components on an object on the XBL
scope chain. At this point, it's not necessary anymore.
2013-03-05 10:01:59 -08:00
Blake Kaplan
2f2b2f179e Bug 852436 - nsWrapperCache::WrapObject returning false means failure, even if there's no pending exception. r=bz 2013-03-28 15:45:01 -07:00
Terrence Cole
9801ecf36c Bug 855145 - DeMACROize the JS tracing interfaces; r=billm,mccr8
--HG--
extra : rebase_source : 915c80052b4412f653033eb5fc4d4f96c5d49bd5
2013-03-26 15:10:34 -07:00
Bill McCloskey
c6ed2b487f Bug 855136 - Don't use call/construct slots for direct proxies (r=luke) 2013-03-26 17:53:00 -07:00
Eddy Bruel
afdc0a14d8 Bug 789897 - Implement a preventExtensions trap for proxies. Patch is a semi-tag-team effort with jwalden. r=jwalden, r=ejpbruel, r=bholley, r=two-turtle-doves-and-a-partridge-in-a-pear-tree
--HG--
extra : rebase_source : 03b1b90c727ecc6a5d9d8cd769423f0a8f6efde4
2013-03-22 19:43:12 -07:00
Eddy Bruel
9ab5be1d8d Bug 789897 - Implement an isExtensible trap for proxies. Patch is a semi-tag-team effort with jwalden. r=jwalden, r=ejpbruel, r=bholley, r=two-turtle-doves-and-a-partridge-in-a-pear-tree
--HG--
extra : rebase_source : 346645d8dc32ddb76f18e7557e99f41cb66abe9e
2013-03-22 19:43:03 -07:00
Gina Yeh
74476548cd Bug 853200 - Remove unused event handlers from idl, r=echou, sr=mrbkap 2013-03-28 18:05:58 +08:00
Bobby Holley
4c101aeffe Bug 854139 - Handle all DOM objects, not just ones that unwrap to nsISupports. r=bz 2013-03-27 18:27:27 -07:00
Bobby Holley
39581655af Bug 790732 - Components shim tests. r=mrbkap 2013-03-27 18:27:27 -07:00
Bobby Holley
649ec60a83 Bug 790732 - Omit Components object for content scopes. r=mrbkap 2013-03-27 18:27:27 -07:00
Bobby Holley
051df3c359 Bug 790732 - Make Components console warning test pref-aware. r=mrbkap 2013-03-27 18:27:26 -07:00
Bobby Holley
ac091939ba Bug 790732 - Stop attaching Components in InitClasses. r=mrbkap
This method is larely deprecated. The only two consumers are JSD and the setup
for the safe JSContext, neither of which use system principal and thus neither
of which should have |Components|.
2013-03-27 18:27:26 -07:00
Bobby Holley
33c4c2a36c Bug 790732 - Remove the aTarget parameter from AttachComponentsObject. r=mrbkap
I added this when I thought we'd be defining Components on an object on the XBL
scope chain. At this point, it's not necessary anymore.
2013-03-27 18:27:26 -07:00
David Zbarsky
5b797a8291 Bug 854629 Part 0: Remove the rest of XPIDL bindings for SVG elements r=Ms2ger 2013-03-27 21:23:10 -04:00
Boris Zbarsky
425b25741d Bug 792215. Convert quickstubs to using JSNative getters and setters. r=peterv 2012-09-25 14:44:40 -04:00
Kyle Machulis
5aa83c3e11 Bug 855465 - Add emacs python mode comments to moz.build files; r=gps 2013-04-01 11:36:59 -07:00
Jesse Ruderman
1ecc8d3b4a Bug 404077 followup - remove bug mention from a test. DONTBUILD 2013-03-12 12:36:08 -07:00
Julian Seward
e74cad535a Bug 779291: Implement SPS stackwalk using the breakpad unwinder. r=bgirard,glandium
bug 850089 - fix SPS with disable-crashreporter. Patch by Ted Mielczarek <ted@mielczarek.org>, r=glandium
Bug 850132 - SPS breakpad unwind (bug 779291) breaks Win64 builds with "Unsupported platform". Patch by Makoto Kato <m_kato@ga2.so-net.ne.jp>, r=ted
2013-03-10 23:00:23 +01:00
Phil Ringnalda
a1e8f5ab94 Back out e0038e628250 and 02b242697afb (bug 850523) for test_memoryReporters.xul crashes
CLOSED TREE
2013-03-17 22:15:25 -07:00
Bobby Holley
4624281c15 Bug 813901 - Tests. r=mrbkap 2013-03-17 21:44:42 -07:00
Nicholas Nethercote
7c30d7630e Bug 850523 (part 1) - Add a "js-main-runtime-temporary-peak" memory reporter. r=wmccloskey,jlebar.
--HG--
extra : rebase_source : d183213c48b9d07fb62fce830998bcb8bb044f47
2013-03-06 20:40:36 -08:00
Phil Ringnalda
f3f16b4069 Back out 4d301b2bcad0:e0632e639097 (bug 836301) for Windows build bustage
CLOSED TREE
2013-02-22 08:41:37 -08:00
Bobby Holley
c1bc13e0dd Bug 836301 - Hoist some assertions, remove a bunch of no-op trap overrides, and add assertions that we've entered our policy. r=mrbkap 2013-02-22 08:14:34 -08:00
Bobby Holley
1b08378825 Bug 836301 - Hoist enter() calls from {Xray,}Wrapper::foo into Proxy::foo. r=mrbkap 2013-02-22 08:14:34 -08:00
Bobby Holley
c9d462848e Bug 836301 - Introduce an RAII class for entering policies. r=mrbkap
This will allow us to make some hard assertions that a given policy has been
entered exactly once.
2013-02-22 08:14:33 -08:00
Bobby Holley
bc476a22e1 Bug 836301 - Add Special handling to allow us to call enter() for defineProperty on Xrays. r=mrbkap 2013-02-22 08:14:33 -08:00
Bobby Holley
31e8680c22 Bug 836301 - Stop using JSRESOLVE_ASSIGNING to determine GET vs SET. r=mrbkap
This is just a heuristic, anyway, and some of the usage is downright broken.
There are two cases here:

1 - Deciding what to do for get{Own,}PropertyDescriptor. In these cases, we can
just enter with GET and rely on the filtering machinery to filter out dangerous
setters for security wrappers.

2 - Custom Xray props. None of these make sense in a |set| context. In fact,
    they generally have null setters anyway, so we can just assume GET.

The policy-entering code in XrayWrapper is super haphazard. We'll get rid of it
entirely later in these patches.
2013-02-22 08:14:32 -08:00
Bobby Holley
722e4eafbb Bug 843231 - Compute whether to use an XBL scope exactly once. r=bz 2013-02-22 07:56:03 -08:00
Bobby Holley
dbc130d113 Bug 843231 - Remove SetGlobal. r=bz
This stuff has all been simplified significantly with CPG, and this is no longer
necessary. We always have a global when we construct a scope, and it never
changes.
2013-02-22 07:56:03 -08:00
Bobby Holley
0352ac2f47 Bug 843231 - Move the nulling out of mPrototypeNoHelper from SetGlobal to RemoveWrappedNativeProtos. r=bz
The only call-site for both of these is JSD->nsXPConnect::InitClasses, so this
is equivalent. All this will go away soon anyhow when JSD goes away.
2013-02-22 07:56:02 -08:00
Peter Van der Beken
c485f6afee Fix for bug 825628 (Implement NamedConstructor) - add codegen support for NamedConstructor. r=bz.
--HG--
extra : rebase_source : 8393995dca6f65cb49512874c1916ee745436638
2013-01-22 11:51:15 +01:00
Chuck Lee
e329997fd6 Bug 835719 - 0003. Rename JSAutoByteString.encode() to encodeLatin1(). r=terrence 2013-02-21 17:48:17 +08:00
Jonathan Kew
5219b8ae03 backout cset 4ede352670cd (bug 759585) on a CLOSED TREE on suspicion of making windows reftests so slow that they timeout and burn 2013-02-22 09:36:41 +00:00
Bill McCloskey
c330d96d13 Bug 759585 - Change the granularity of collection from compartment to zone (r=jonco,bhackett,njn,dvander,mccr8,bz,luke,bholley) 2013-02-21 18:23:47 -08:00
Masatoshi Kimura
e28c9f3dcd Bug 842730 - Remove nsIJSNativeInitializer from nsXMLHttpRequest. r=sicking 2013-02-20 20:54:19 +09:00
Gavin Sharp
d8ddb05fec Bug 841359 - Always log error originating from windows with chrome principals. r=bz 2013-02-16 17:01:59 -08:00
Andrea Marchesini
8dfd16908c Bug 839447 - Rename nsHTMLOptionElement to HTMLOptionElement, r=Ms2ger
--HG--
rename : content/html/content/src/nsHTMLOptionElement.cpp => content/html/content/src/HTMLOptionElement.cpp
rename : content/html/content/src/nsHTMLOptionElement.h => content/html/content/src/HTMLOptionElement.h
2013-02-18 13:24:58 +01:00
Andrea Marchesini
8f44285b2e Bug 838559 - Rename nsHTMLMenuElement to HTMLMenuElement. r=Ms2ger
--HG--
rename : content/html/content/src/nsHTMLMenuElement.cpp => content/html/content/src/HTMLMenuElement.cpp
rename : content/html/content/src/nsHTMLMenuElement.h => content/html/content/src/HTMLMenuElement.h
2013-02-18 06:59:08 -05:00
Randy Lin
2887f23f47 Bug 834165 - Implement BlobEvent. r=smaug
--HG--
extra : rebase_source : 5d8f13baa4b2ff00a63300be54edb81ab2555bd9
2013-02-18 14:06:27 +08:00
Boris Zbarsky
7403aaff3d Bug 822674. Give RTCPeerConnection a sane classinfo. r=jst,jesup. r=peterv pending 2013-02-15 22:41:31 -05:00
Steve Fink
231eada73a Bug 838014 - More rooting in Debugger, plus some minor rooting in JSD and xpconnect for some should-be-private JSAPI changes. r=terrence
--HG--
extra : rebase_source : 46febe5421f6e1901f0d5ac2707fb3fdde1894db
2013-02-12 12:27:02 -08:00
Bobby Holley
649c8cee47 Bug 834697 - Enable XBL scopes, and disable assertion. r=bz,me 2013-02-14 15:15:59 +01:00
Makoto Kato
eeac5d0163 Bug 834645 - move -STACK parameter to config.mk. r=ted 2013-02-14 15:22:00 +09:00
Till Schneidereit
9e993e5cc6 Bug 679940 - Share bytecode, source notes and atoms of functions in a runtime wherever possible. r=bhackett
--HG--
extra : rebase_source : 1518f7830a5640a2216c2d828859b8660d3fff60
2013-02-02 00:02:08 +01:00
Ryan VanderMeulen
1568f7d987 Backed out 12 changesets (bug 834732) for b2g bustage and OSX mochitest-1 crashes on a CLOSED TREE. 2013-02-12 20:54:48 -05:00
Bobby Holley
97fd619f30 Bug 834732 - Assert proper cx stack handling in WrapperFactory::Rewrap. r=mrbkap 2013-02-13 00:22:27 +01:00
Bobby Holley
a097df7c72 Bug 834732 - Implement stricter cx handling in xpc_EvalInSandbox. r=mrbkap 2013-02-13 00:22:27 +01:00
Bobby Holley
363a88b529 Bug 834732 - Make nsCxPusher.Push(JSContext*) infallible. r=mrbkap
We leave the nsIDOMEventTarget* versions fallible for now, but this makes the
common case a lot simpler. Note that this means that pushing a null JSContext,
a bug, is no longer handled at runtime. But I think we should just assert
against it, since there are already callers that don't check the return value.
2013-02-13 00:22:26 +01:00
Bobby Holley
70a369794a Bug 834732 - Remove PushBehavior. r=mrbkap
Now that we only have ALWAYS_PUSH and ASSERT_SCRIPT_CONTEXT, we have uniform
release-mode behavior everywhere. Remove the crap.
2013-02-13 00:22:26 +01:00
Bobby Holley
b55e2ecc2b Bug 834732 - Get rid of footgun bool param for nsCxPusher and use an explicit enum. r=mrbkap
The goal here is to get rid of this crap entirely, and make nsCxPusher always
push. But that's a scary change, so we do it in chunks. This patch, in particular,
should have zero behavioral change. This means preserving some very wrong behavior.
For instance, currently SafeAutoJSContext never pushes a damn thing, because the
safe JSContext doesn't have an associated nsIScriptContext. We preserve this
behavior, and in fact convert various similarly-buggy consumers to
SafeAutoJSContext, so that we can hoist the behavioral change into a subsequent
patch.
2013-02-13 00:22:26 +01:00
Peter Van der Beken
88c8f3e9b0 Fix for bug 748669 (Make JS_{Start,Stop}Profiling work with Instruments on Lion). r=sfink/ted.
--HG--
extra : rebase_source : 8f7add5256dde39cf165b69b0ab1ebced05d120e
2012-01-21 21:40:37 +01:00
Jon Coppeard
b752526987 Bug 849273 - Investigate splitting the js and JS namespaces r=terrence
--HG--
extra : rebase_source : 2b131d0177f02e5f0e89398545481fcacbfde00f
2013-03-19 10:35:41 +00:00
Mohit Gahlot
466c217001 Bug 851377 - Now ResolvingId::isResolving is not called with a null object. r=bholley 2013-03-18 21:28:05 +05:30
Andrea Marchesini
fef387cf3e Bug 841493 - Rename nsHTMLVideoElement to HTMLVideoElement, r=Ms2ger
--HG--
rename : content/html/content/public/nsHTMLVideoElement.h => content/html/content/public/HTMLVideoElement.h
rename : content/html/content/src/nsHTMLVideoElement.cpp => content/html/content/src/HTMLVideoElement.cpp
2013-03-19 13:27:35 +01:00
Nicholas Nethercote
f1560712c0 Bug 850523 (part 1) - Add a "js-main-runtime-temporary-peak" memory reporter (2nd attempt). r=wmccloskey,jlebar.
--HG--
extra : rebase_source : d90dcad2ed990b6e276ff38c36170b815ae9b823
2013-03-06 20:40:36 -08:00
Andrew McCreight
eeca77775f Bug 784730 - Add missing comment. r=bholley DONTBUILD 2013-02-12 09:46:34 -08:00
Ryan VanderMeulen
4d36c69250 Merge m-c to inbound. 2013-02-11 20:49:31 -05:00
Olli Pettay
29c93f77f6 Bug 839528 - Change the namespace of xpidl dictionary helpers, r=khuey 2013-02-11 21:37:50 +02:00
Olli Pettay
930b4e20e9 Bug 839465 - Implement SmartCardEvent using event code generator, r=mounir 2013-02-11 21:37:20 +02:00
Jeff Walden
0e302a5094 Bug 826009 - Move locale callback info, default locale, etc. data and APIs to be JSRuntime-centered. f=bholley, r=jorendorff
--HG--
extra : rebase_source : 35317f4c29e9dd70e7d4fd1292027cfd51ce2675
2013-02-07 18:04:11 -08:00
Bobby Holley
778e86b208 Bug 839867 - Align gecko with the spec on cross-origin access to Location.hash. r=bz
We update the tests to cover this case. There was also a bug in the tests where
we were accidentally testing non-writable Location properties against window
rather than window.location. :-(
2013-02-11 00:05:17 +01:00
Andrew McCreight
f5cee347e2 Bug 784730 - Crash in ReparentWrapperIfFound if wrapper already in scope. r=bholley 2013-02-06 12:18:54 +00:00
Tom Schuster
9887b27276 Bug 838558 and Bug 839027: checkin lost changsets in XPC. CLOSED TREE 2013-02-11 22:07:35 +01:00
Tom Schuster
649be0b299 Bug 839027 - Kill object typeof hook. r=jorendorff 2013-02-11 21:05:13 +01:00
Mike Hommey
362f974085 Bug 793767 - Use the executable file location to derive the update root. r=rstrong 2013-02-08 15:58:52 +01:00
Andrea Marchesini
d8e0d71402 Bug 839056 - Rename nsHTMLOptGroupElement to HTMLOptGroupElement. r=Ms2ger
--HG--
rename : content/html/content/src/nsHTMLOptGroupElement.cpp => content/html/content/src/HTMLOptGroupElement.cpp
rename : content/html/content/src/nsHTMLOptGroupElement.h => content/html/content/src/HTMLOptGroupElement.h
2013-02-08 11:34:48 -05:00
Boris Zbarsky
704f7c0de4 Bug 839116 followup. Stop depending on <html> elements having a content-visible QueryInterface in the poor CLOSED TREE. r=mrbkap 2013-02-08 15:03:07 +00:00
Bobby Holley
dc7e7a50d2 Bug 821850 - Dynamically waive Xray for field access by XBL script on bound nodes. r=bz 2013-02-08 14:24:22 +00:00
Bobby Holley
4b306e73c6 Bug 821850 - Expose XBL members via Xray wrappers. r=bz 2013-02-08 14:24:21 +00:00
Bobby Holley
34890dad66 Bug 821850 - Clean up security wrappers for NAC. r=bz 2013-02-08 14:24:20 +00:00
Bobby Holley
4b6b3faf6a Bug 821850 - Check for XBL scopes in nsContentUtils::IsCallerXBL(). r=bz 2013-02-08 14:24:20 +00:00
Bobby Holley
23776a5404 Bug 821850 - Add infrastructure for lazily-created XBL scopes. r=bz 2013-02-08 14:24:19 +00:00
Bobby Holley
4d9b1a396c Bug 812669 - Remove XPConnect equality hooks. r=mrbkap 2013-02-08 10:39:01 +00:00
Nicholas Nethercote
02a7279b21 Bug 836949 (part 1) - Clean up the versions/options code. r=jorendorff.
--HG--
rename : content/html/content/test/test_meta_attributes_reflection.html => content/html/content/test/test_ol_attributes_reflection.html
extra : rebase_source : 970d8a542bb631ce3f18da26ece69667af29d0a9
2013-02-06 21:35:16 -08:00
Peter Van der Beken
e07d1dcdb8 Fix for bug 838228 (toString on an Xray for an interface object should stringify like Function.prototype.toString). r=bz.
--HG--
rename : content/html/content/test/test_map_attributes_reflection.html => content/html/content/test/test_ol_attributes_reflection.html
extra : rebase_source : 9bd7efb927e4eac96569ed629ee230dbf555fb63
2013-02-01 15:33:58 +01:00
Vicamo Yang
5c2a390050 Bug 834193: Implement USSDReceivedEvent, DataErrorEvent and CFStateChangeEvent using codegenerator. r=smaug 2013-02-07 19:02:12 +08:00
Vicamo Yang
f1c896b374 Bug 835148: Implement SmsEvent using event generator. r=smaug
--HG--
rename : dom/sms/interfaces/nsIDOMSmsEvent.idl => dom/sms/interfaces/nsIDOMMozSmsEvent.idl
rename : dom/sms/interfaces/nsIDOMSmsMessage.idl => dom/sms/interfaces/nsIDOMMozSmsMessage.idl
2013-02-07 18:43:22 +08:00
Bill McCloskey
43f9fef2cf Bug 836524 - Zone renaming part 2 (r=jonco) 2013-02-06 18:08:16 -08:00
Ryan VanderMeulen
9e13554a56 Backed out changesets 34927afb65e2 and 2d0b056ced49 (bug 838559) for mochitest failures.
--HG--
rename : content/html/content/src/HTMLMenuElement.cpp => content/html/content/src/nsHTMLMenuElement.cpp
rename : content/html/content/src/HTMLMenuElement.h => content/html/content/src/nsHTMLMenuElement.h
2013-02-06 16:22:59 -05:00
Andrea Marchesini
e5a5252fbf Bug 838559 - Rename nsHTMLMenuElement to HTMLMenuElement. r=Ms2ger
--HG--
rename : content/html/content/src/nsHTMLMenuElement.cpp => content/html/content/src/HTMLMenuElement.cpp
rename : content/html/content/src/nsHTMLMenuElement.h => content/html/content/src/HTMLMenuElement.h
2013-02-06 14:19:20 -05:00
Boris Zbarsky
b77f5718fe Bug 838518 part 2. Fix nodeiterator callers per the API change that was made. r=smaug 2013-02-06 14:22:33 +00:00
Boris Zbarsky
e4b4da3503 Bug 838518 part 1. Fix treewalker callers per the API change that was made. r=smaug 2013-02-06 14:22:33 +00:00
Ryan VanderMeulen
6710d4e443 Backed out changeset 2861ef67390a (bug 837566) for Linux32 mochitest-other shutdown hangs. 2013-02-05 07:54:49 -05:00
Vicamo Yang
206ac2e59c Bug 833278 - Part 2/2: Implement MozVoicemailEvent using codegenerator. r=gwagner,smaug 2013-02-05 17:02:18 +08:00
Nicholas Nethercote
b6e73adcac Bug 837566 - Remove js_RemoveRoot. r=terrence. 2013-02-03 20:17:34 -08:00
Bobby Holley
2ad47344dd Bug 831076 - Outerize during same-compartment wrapping so that JS_Wrap* is guaranteed to outerize. r=mrbkap 2013-02-04 15:13:14 +00:00
Bobby Holley
fd4c9ea494 Bug 831076 - Outerize at the very beginning of XPConnect wrapping and remove other outerization checks. r=mrbkap 2013-02-04 15:13:13 +00:00
Andrew McCreight
8e63ed0ee6 Bug 819131 - Preserve reflector delegate weak map keys. r=billm 2012-05-25 16:07:24 +00:00
Peter Van der Beken
aa02745915 Fix for bug 830879 (HTML Element WebIDL bindings require classinfo). r=bz.
--HG--
extra : rebase_source : a88a5f24d3d4c12b652f1228eb5b3b7bb8b9e5ee
2013-01-10 10:54:32 +01:00
Nicholas Nethercote
524f6ea9b5 Bug 788293 - Remove e4x support. r=jorendorff,terrence,evilpie.
Ding dong!  The witch is dead!
2013-01-24 21:24:57 -08:00
Phil Ringnalda
b4eec14ca3 Back out 66882ea6f8c7 (bug 788293) and 32f09cb3c7b6 (bug 834090) for bustage
CLOSED TREE
2013-01-31 22:29:30 -08:00
Nicholas Nethercote
ae7837bdef Bug 788293 - Remove e4x support. r=jorendorff,terrence,evilpie.
Ding dong!  The witch is dead!

--HG--
extra : rebase_source : 7574f5620e303c25120fcfc8ceb2099ad75c8f1b
2013-01-24 21:24:57 -08:00
Nicholas Nethercote
84a1d83d0a Bug 833208 (part 5) - Remove e4x support from mochitests. r=jorendorff.
--HG--
extra : rebase_source : a88f8ed13299c566df2297729b3a5ddf21fcaafa
2013-01-28 14:55:17 -08:00
Nicholas Nethercote
f7f94fcd8f Bug 833208 (part 4) - Remove e4x support from xpcshell tests. r=jorendorff.
--HG--
extra : rebase_source : a7bd33905120f74e6c242e0c236450dd3be54436
2013-01-30 16:56:16 -08:00
Boris Zbarsky
4386972397 Add a test for WebIDL-weakmap stuff in addition to XPConnect-weakmap. No bug, no review
--HG--
rename : js/xpconnect/tests/mochitest/test_bug655297.html => js/xpconnect/tests/mochitest/test_bug655297-1.html
rename : js/xpconnect/tests/mochitest/test_bug655297.html => js/xpconnect/tests/mochitest/test_bug655297-2.html
2013-01-31 01:04:48 -05:00
Boris Zbarsky
194b6a08f7 Bug 829867. Unpref PaintRequest and Screen WebIDL bindings and remove some cruft from quickstubs. r=peterv
nsIDOMCharacterData and nsIDOMText quickstubs are not needed after bug 826703.

nsIDOMRect quickstubs haven't been needed since bug 824970 landed.

nsCSSPropertiesQS has been unused since bug 801083 at least.

The various includes being removed are either fully on WebIDL now or using WebIDL quickstubs.
2013-01-29 12:52:09 -05:00
Boris Zbarsky
27b20c21af Bug 824589. Convert XULElement to WebIDL. r=peterv
The assertions in nsINode and nsWrapperCache are to eagerly catch
failures to override those methods.

The classinfo change for XULTreeBuilder is needed because one of those
is returned via an nsIXULTemplateBuilder attribute on XULElement.
Alternately, I could mark it notflattened in Bindings.conf, but Enn
said he prefers this anyway.

The change to the QI impl in BindingUtils is needed because when
XPConnect converts an IID from C++ to JS it makes is an nsJSID, not an
nsJSIID.  We've run into this before, sadly.

I removed "id" from nsIDOMXULElement because it's already on Element.
I suppose I could have left it there, but this seems cleaner.

The nsJSIID::HasInstance changes are needed to support XBL-implemented
interfaces.  Sadly, this does mean that if the underlying object QIs
to something but we didn't put those props on the WebIDL we'll end up
testing true for instanceof but not exposing the props.  I don't see
an obviously better way.  We should work on killing off uses of
"instanceof someinterface".

The browser.js change is needed to avoid throwing exceptions during
browser-chrome tests that are now getting reported because our
swapFrameLoaders is no longer an XPConnect method.
2013-01-29 12:51:55 -05:00
Boris Zbarsky
66e49b02aa Back out bug 824589 (rev 22695cac3896) on suspicion of Ts regression 2013-01-29 17:18:06 -05:00
Boris Zbarsky
775587776a Back out bug 829867 (rev 2a0424e177c1) on suspicion of Ts regression 2013-01-29 17:17:37 -05:00
Terrence Cole
a3e6adc9fa Bug 706885 - Rework Rooting APIs to preserve all available type information; r=billm 2013-01-28 18:25:23 -08:00
Boris Zbarsky
209081f37e Bug 829867. Unpref PaintRequest and Screen WebIDL bindings and remove some cruft from quickstubs. r=peterv
nsIDOMCharacterData and nsIDOMText quickstubs are not needed after bug 826703.

nsIDOMRect quickstubs haven't been needed since bug 824970 landed.

nsCSSPropertiesQS has been unused since bug 801083 at least.

The various includes being removed are either fully on WebIDL now or using WebIDL quickstubs.
2013-01-29 12:52:09 -05:00
Boris Zbarsky
8231be64a0 Bug 824589. Convert XULElement to WebIDL. r=peterv
The assertions in nsINode and nsWrapperCache are to eagerly catch
failures to override those methods.

The classinfo change for XULTreeBuilder is needed because one of those
is returned via an nsIXULTemplateBuilder attribute on XULElement.
Alternately, I could mark it notflattened in Bindings.conf, but Enn
said he prefers this anyway.

The change to the QI impl in BindingUtils is needed because when
XPConnect converts an IID from C++ to JS it makes is an nsJSID, not an
nsJSIID.  We've run into this before, sadly.

I removed "id" from nsIDOMXULElement because it's already on Element.
I suppose I could have left it there, but this seems cleaner.

The nsJSIID::HasInstance changes are needed to support XBL-implemented
interfaces.  Sadly, this does mean that if the underlying object QIs
to something but we didn't put those props on the WebIDL we'll end up
testing true for instanceof but not exposing the props.  I don't see
an obviously better way.  We should work on killing off uses of
"instanceof someinterface".

The browser.js change is needed to avoid throwing exceptions during
browser-chrome tests that are now getting reported because our
swapFrameLoaders is no longer an XPConnect method.
2013-01-29 12:51:55 -05:00
Nils Maier
4f144469fc Bug 761552 - Part 2: Avoid external JS strings in XPCConvert. r=bholley
XPCConvert needs to convert some string types to JS strings in order to call
from C++ into JS land. Make those converted JS strings allocate the buffers
from the JS compartment memory pool, instead of making them external and
allocated from the main heap.
This improves memory reporting and may also influence memory fragmentation
and/or performance.
2013-01-29 10:50:04 -05:00
Boris Zbarsky
2379ea179f Bug 829252 followup. Now that WindowRoot has a wrapper cache, we need to be able to deal with ConstructSlimWrapper on things that have no classinfo. r=peterv pending, but landing on CLOSED TREE now to fix orange. 2013-01-29 10:18:05 -05:00
Boris Zbarsky
bb1df3a788 Bug 834877 part 3. Add faster DOMString-to-JS conversion code. r=peterv 2013-01-29 09:42:14 -05:00
Boris Zbarsky
60309d1fc9 Bug 829252 part 4. Turn on the EventTarget quickstubs. r=peterv 2013-01-29 08:44:01 -05:00
Nathan Froyd
cd6a6d521a Bug 835358 - remove unused member nsXPConnect::mScopes; r=bholley
--HG--
extra : rebase_source : 7c5c2152666c9b8eb8860db4d7e39c274f772b5b
2013-01-28 10:37:57 -05:00
Peter Van der Beken
4d5c0010c4 Fix for bug 715156 (JS code no longer work for select options as array in a Greasemonkey script (index and name setters don't really work via XrayWrapper)). r=bz.
--HG--
extra : rebase_source : 2ced75b6d49dbab5afe9a6ce7c322bf18a634026
2013-01-14 11:29:48 +01:00
Ed Morley
bc0702d0d7 Backout f3c145bd1dd2 & 5075690572a9 for OS X startup failures 2013-01-28 11:08:21 +00:00
Peter Van der Beken
a6ea06e0ab Fix for bug 715156 (JS code no longer work for select options as array in a Greasemonkey script (index and name setters don't really work via XrayWrapper)). r=bz.
--HG--
extra : rebase_source : 6bc420bd917e00a49dc5f6f3de13ff9e290c9580
2013-01-14 11:29:48 +01:00
Kyle Machulis
2ff0659932 Bug 777271 - Re-implement nsIDOMCallEvent using event implementation codegen. r=bent,vicamo,hsinyi 2013-01-28 15:39:50 +08:00
Bill McCloskey
8544cb4e1d Bug 751618 - Add js/GCAPI.h (r=terrence) 2013-01-27 12:35:12 -08:00
Jan de Mooij
a9f2829ff4 Bug 833817 part 3 - Replace JSStackFrame with JSAbstractFramePtr. r=luke 2013-01-25 09:49:29 +01:00
Jon Coppeard
6ecb789968 Bug 815542 - crash in IncrementalCollectSlice r=billm
--HG--
extra : rebase_source : d751b3684f6461b094278aa39508417928c2b660
2013-01-25 09:56:04 +00:00
Bobby Holley
800db35b78 Bug 833856 - Handle errors better in EvaluateString. r=bz
This bug happens when we take the !useSandbox path. Basically, when the code
throws, we can end up with garbage in *aRetValue while still returning true
from EvaluateString. It looks like the convention is for these kind of eval
functions to return success even for invalid code, so lets just make sure we
check things a bit better.

This crashtest is kind of half-baked in the sense that it doesn't actually
crash without the rest of the patch. But the testcase here involves a lot of
undefined behavior (what ends up getting left in *aRetValue) during a call
to window.open (which spins the event loop, etc). I already sunk about half
an hour into trying to make it crash, so I'm just going to go with this for
now.
2013-01-25 11:17:40 +01:00
Bobby Holley
b7fb048ffe Bug 823348 - Tests. r=mrbkap
We tack these onto the tests from bug 812415, adding coverage for
nsExpandedPrincipal and making sure that the waivers are deep.

We also take the opportunity to check the asymmetric security
relationship between a principal and its corresponding nsEP.
2013-01-23 06:04:39 +01:00
Bobby Holley
f20eabe075 Bug 823348 - Stop checking for Xray waivers in the Xray machinery. r=mrbkap
All the casese where we want to waive should now be going through WaiveXrayWrapper.
2013-01-23 06:04:39 +01:00
Bobby Holley
c82ae67593 Bug 823348 - Replace security wrapper enumeration with a more rule-based approach. r=mrbkap 2013-01-23 06:04:39 +01:00
Bobby Holley
4b3c0f19a3 Bug 823348 - Hoist special cases to the top of WrapperFactory::Rewrap. r=mrbkap
This paves the way for more rule-based selection of wrappers in the common case.
2013-01-23 06:04:39 +01:00
Bobby Holley
6284ce3329 Bug 823348 - Move COW prototype remapping out of wrapper selection. r=mrbkap
It's pretty orthogonal, and makes the critical block more complicated than it
needs to be.
2013-01-23 06:04:39 +01:00
Bobby Holley
39970d33e6 Bug 823348 - Precompute various parameters in Rewrap. r=mrbkap
This is generally cleaner, and avoids potentially calling these functions
multiple times when we start moving this stuff around.
2013-01-23 06:04:39 +01:00
Bobby Holley
7124dc509b Bug 823348 - Use GetXrayType for content->chrome Xray wrappers. r=mrbkap
There's no reason to do this any different than we do for XOWs and such. The
only thing this might conceivably support would be certain chrome XPWNs-as-COWs.
But that would require that they forced a parent in precreate without being
flagged as DOM objects in classinfo. And it's not clear why we'd want to support
that. And we're generally moving away from COWs anyway.
2013-01-23 06:04:39 +01:00
Bobby Holley
1aedd25af4 Bug 823348 - Use EnsureCompartmentPrivate In Rewrap and stop checking for null. r=mrbkap 2013-01-23 06:04:39 +01:00
Bobby Holley
72ddba04a7 Bug 823348 - Flip off the wantXrays for chrome sandboxes. r=mrbkap
wantXrays means that the sandbox wants Xray wrappers even when accessing same-
origin content. The default is true, which Blake says has something to do with
GreaseMonkey and days of old.

This flag never had an effect for chrome, because the chrome->chrome case always
short-circuited to &CrossCompartmentWrapper::singleton. But once we start
respecting the flag as a general-purpose indicator that Xrays should be applied
same-origin, we need to either add a special case in Rewrap or make the flag reflect
reality. The latter seems cleaner and more sane.

However, things are complicated by the fact that there's also a completely different,
orthogonal usage, whereby setting wantXrays to false implicitly waives Xray on the
returned sandbox _and_ on any results returned from evalInSandbox. This is just nuts.
The former can be accomplished by callers manually using .wrappedJSObject, and the
latter by having EvalInSandbox transitively apply waivers from their sandbox arguments.

I've updated the documentation on the MDN page so that it only describes the
reasonable usage. The next step is to get rid of the crazy behavior. I think the
best path of migration is to have wantXrays: false keep implicitly waiving, but
waive return values from EvalInSandbox based on whether the argument was waived. This
patch does that.
2013-01-23 06:04:39 +01:00
Bobby Holley
33983c1d00 Bug 823348 - Make NNXOWs use an explicitly opaque Policy. r=mrbkap
There's no reason to be doing a dynamic check here, given that the JSClasses
will never match. Lets be explicit and safe.
2013-01-23 06:04:38 +01:00
Bobby Holley
165e39b43e Bug 823348 - Do a better job of lying about the holder and make assertions fatal. r=mrbkap
I noticed this nonfatal assertion firing, unrelated to my patches. Leaking
the holder is not so great. Let's fix this for real.
2013-01-23 06:04:38 +01:00
Bobby Holley
ddf7e9edc1 Bug 823348 - Remove broken and unused __scriptOnly__ check. r=mrbkap
__scriptOnly__ is unused on mxr and addons-mxr. Morevoer, the current
implementation is totally broken, because we check for NNXOW, which only
happens when a random content JS object ends up in some other cross-origin
scope (via addons, presumably), whereas chrome objects use ChomeObjectWrapper.

I'm soon going to replace SCRIPT_ACCESS_ONLY with checked unwrapping, and mark
all COWs as unsafe to unwrap (see bug 821573 and bug 658909). So let's just kill
this thing here.
2013-01-23 06:04:38 +01:00
Bobby Holley
d66093b809 Bug 823348 - Don't set universalXPConnectEnabled for chrome compartments. r=mrbkap
There's a browser-chrome test that does this, which means that _all_ subsequent
browser-chrome tests inherit it. So depending on the ordering of cases in
WrapperFactory, we might end up using a CrossCompartmentWrapper rather than an
XrayWrapper, meaning that stuff like nodePrincipal doesn't work anymore.

The semantics of UniversalXPConnect are now entirely dicatated by what makes
our test suite go green. So let's not force ourselves to bend over backwards
during wrapping to handle this case. And let's fix that stupid test while
we're at it.
2013-01-23 06:04:38 +01:00
Bobby Holley
36a6df18c4 Bug 823348 - Uninline UniversalXPConnect management. r=mrbkap
Every time the layout of CompartmentPrivate changes, I forget to rebuild in
caps/ and spend half an hour wondering what the heck is going on. :-(
2013-01-23 06:04:38 +01:00
Ehsan Akhgari
16e89b722a Bug 833631 - Unprefix mozAudioContext; r=roc
--HG--
extra : rebase_source : 3c477a97ea842a806f6fad6f5c3a81d6e50b27c3
2013-01-22 20:12:21 -05:00
Steve Fink
57a2c2471b Bug 828753 - jsid rooting, mostly in jsinfer.*. Also switch JSObject from struct to class. r=terrence 2012-12-31 12:40:21 -08:00
Terrence Cole
85b0b5a254 Bug 803182 - Make the js shell stack limit match the browser's; r=dmandelin
This should help ensure that recursion errors found in the shell actually
represent real errors. This also attempts to account for the difference in size
between debug and optimized builds to the size of js::Interpret's stack frame.
2012-10-29 13:36:41 -07:00
Irving Reid
7deeb3fb59 Bug 818958: Tell SPSProfiler when the JS runtime shuts down r=luke 2013-01-18 12:04:35 -05:00
Nicholas Nethercote
004a30a0a5 Bug 832026 - Measure JSRuntime::bumpAlloc_ in the JS memory reporter. r=sstangl.
--HG--
rename : js/src/tests/lib/jittests.py => js/src/jit-test/jit_test.py
rename : layout/reftests/w3c-css/submitted/values3/calc-background-image-gradient-1-ref.html => layout/reftests/css-calc/background-image-gradient-1-ref.html
rename : layout/reftests/w3c-css/submitted/values3/calc-background-image-gradient-1.html => layout/reftests/css-calc/background-image-gradient-1.html
rename : layout/reftests/w3c-css/submitted/values3/reftest.list => layout/reftests/css-calc/reftest.list
rename : layout/reftests/text/auto-hyphenation-10-ref.html => layout/reftests/text/auto-hyphenation-10.html
rename : layout/reftests/text/auto-hyphenation-8-ref.html => layout/reftests/text/auto-hyphenation-8.html
rename : layout/reftests/text/auto-hyphenation-9-ref.html => layout/reftests/text/auto-hyphenation-9.html
rename : services/common/servicesComponents.manifest => services/sync/SyncComponents.manifest
extra : rebase_source : 6b9d955241e189e52c6145f3fb4c3169ec834b78
2013-01-17 17:50:21 -08:00
Boris Zbarsky
d53ec45102 Bug 823228 part 2. Move indexed property access on windows from nsWindowSH::GetProperty to the outer window proxy. r=bholley 2013-01-17 12:30:37 -05:00
Bobby Holley
2780e92307 Bug 824864 - Implement nsContentUtils::GetObjectPrincipal. r=bz
The SSM interface is super awkward.
2013-01-16 18:50:25 -08:00
Trevor Saunders
9f0ad48b28 bug 822289 - remove NS_IMPL_CYCLE_COLLECTION_CLASS and friends r=mccr8 2013-01-12 07:40:33 -05:00
Andrew McCreight
b934f7fc9a Bug 829430 - Use the right check for if we're GCing. r=billm 2013-01-15 09:10:36 -08:00
Mats Palmgren
94ede408a1 Bug 786533 - On Windows, one of the system header files (windef.h) defines 'min' and 'max' as macros which breaks any use of std::min/std::max. Define NOMINMAX before including system header files where needed to avoid defining those macros. r=ehsan 2013-01-15 13:22:03 +01:00
Mats Palmgren
6c53161814 Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan 2013-01-15 13:22:03 +01:00
Terrence Cole
912e1ad2ed Bug 811060 - Move DeflateString out of jsstr and make it Typey; r=Waldo
--HG--
extra : rebase_source : 9d239c525e8b0c04a63770d4ed732c9c6da54a2c
2012-11-09 09:45:25 -08:00
Ehsan Akhgari
d843a25f8e Bug 818224 - Show all chrome script errors originated from private windows; r=bholley 2013-01-14 09:17:37 -05:00
Ms2ger
3c26b8b8e4 Merge latest PGO-green m-i changeset to m-c. 2013-01-11 14:48:33 +01:00
Ms2ger
effe119b3d Bug 824481 - Cleanup style attribute getters; r=bz 2013-01-11 09:42:59 +01:00
Ehsan Akhgari
1ced5105eb Merge mozilla-central into mozilla-inbound 2013-01-08 14:59:20 -05:00
Olli Pettay
b63413d754 Bug 827471 - Improve CanSkipWrappedJS, r=mccr8 2013-01-08 19:40:35 +02:00
Andrew McCreight
7d3dd0a3b1 Bug 690970, part 3: fix black-gray edges in weak containers at start of CC. r=billm 2013-01-08 10:36:51 -08:00
Steve Fink
08f99e5f1c Bug 827225 - Rename JS_GetTypedArrayType to JS_GetArrayBufferViewType, add TYPE_DATAVIEW. r=bz, sr=dmandelin
--HG--
extra : rebase_source : c5947273c5d517338ea1f468358511aa979b4959
2013-01-07 15:12:00 -08:00
William Chen
8fc8c7cc9a Bug 826606 - Set uninitialized values for DeviceProximityEvent according to spec. r=dougt,smaug,khuey 2013-01-08 09:36:05 -08:00
Andrew McCreight
6f2b4df7a3 Bug 777385 - Support (some) Paris bindings objects as weak map keys. r=peterv
This adds support for many kinds of Paris bindings objects as weak map keys.
This patch supports nsISupports objects as well as non-cycle-collected
non-nsISupports objects. What is needed for support is to preserve any wrapper,
if the object is wrapper cached. In other cases, we don't need to do anything.
2012-11-09 10:59:02 -08:00
Ted Mielczarek
bc92001c0b bug 604039 - Add DOM Gamepad APIs. r=smaug
--HG--
extra : rebase_source : ffffdc4549da1b25ea263b623c05ae1afb3d46a0
2011-08-03 14:12:08 -04:00
Jan de Mooij
eb375c1d4a Bug 850156 - Use separate memory reporters for Ion and baseline code. r=njn,dvander 2013-03-20 11:24:17 +01:00
Ed Morley
a150e0c867 Merge mozilla-central to mozilla-inbound 2013-01-07 20:20:51 +00:00
Olli Pettay
a0d72846bb Bug 705371 - [CC] don't add JSContexts that have no children to the cycle collector graph, r=mccr8 2013-01-07 19:40:46 +02:00
Chia-hung Tai
08eb1bb588 Bug 825836 - Add Blob into JS component. r=sicking 2013-01-04 15:53:25 +08:00
Nicholas Nethercote
6a3f1a1648 Bug 826526 - Modify the orphan node reporter so it handles WebIDL objects. r=bz. 2013-01-06 20:43:54 -08:00
Peter Van der Beken
96b67671a8 Fix for bug 824907 (Convert HTML table elements to WebIDL) - convert HTMLTableColElement to WebIDL. r=bz.
--HG--
rename : content/html/content/src/nsHTMLTableCellElement.cpp => content/html/content/src/HTMLTableCellElement.cpp
rename : content/html/content/src/nsHTMLTableColElement.cpp => content/html/content/src/HTMLTableColElement.cpp
rename : content/html/content/src/nsHTMLTableColElement.cpp => content/html/content/src/HTMLTableColElement.h
rename : content/html/content/src/nsHTMLTableElement.h => content/html/content/src/HTMLTableElement.h
rename : content/html/content/src/nsHTMLTableRowElement.cpp => content/html/content/src/HTMLTableRowElement.cpp
rename : content/html/content/src/nsHTMLTableRowElement.cpp => content/html/content/src/HTMLTableRowElement.h
extra : rebase_source : 4654bf54c41231eed6f73a35118d58be0c9af9a0
2012-12-29 15:07:57 +01:00
Peter Van der Beken
71cdba8a1a Fix for bug 824907 (Convert HTML table elements to WebIDL) - convert HTMLTableRowElement to WebIDL. r=bz.
--HG--
extra : rebase_source : d2febac66f508caf3c2b89816e811ed8e2c88856
2012-12-29 15:07:57 +01:00
Peter Van der Beken
88f551c0d3 Fix for bug 824907 (Convert HTML table elements to WebIDL) - convert HTMLTableCellElement to WebIDL. r=bz.
--HG--
rename : content/html/content/src/nsHTMLTableCellElement.cpp => content/html/content/src/HTMLTableCellElement.cpp
rename : content/html/content/src/nsHTMLTableCellElement.cpp => content/html/content/src/HTMLTableCellElement.h
rename : content/html/content/src/nsHTMLTableElement.cpp => content/html/content/src/HTMLTableElement.cpp
rename : content/html/content/src/nsHTMLTableElement.h => content/html/content/src/HTMLTableElement.h
rename : content/html/content/src/nsHTMLTableRowElement.cpp => content/html/content/src/HTMLTableRowElement.h
extra : rebase_source : fcf088e7ac91a216ae7ad1cb16d509a17cd7a2a7
2012-12-29 15:07:56 +01:00
Peter Van der Beken
0a9ff23dea Fix for bug 824907 (Convert HTML table elements to WebIDL) - convert HTMLTableSectionElement to WebIDL. r=bz.
--HG--
rename : content/html/content/src/nsHTMLTableRowElement.cpp => content/html/content/src/HTMLTableRowElement.cpp
rename : content/html/content/src/nsHTMLTableSectionElement.cpp => content/html/content/src/HTMLTableSectionElement.cpp
rename : content/html/content/src/nsHTMLTableSectionElement.cpp => content/html/content/src/HTMLTableSectionElement.h
rename : dom/interfaces/html/nsIDOMHTMLTableSectionElem.idl => dom/interfaces/html/nsIDOMHTMLTableSectionElement.idl
extra : rebase_source : b9c1d7dea38653452b44b2033cf2c0140f7b39b1
2012-12-29 15:07:48 +01:00
Peter Van der Beken
7538219944 Fix for bug 824907 (Convert HTML table elements to WebIDL) - convert HTMLTableElement to WebIDL. r=bz.
--HG--
rename : content/html/content/src/nsHTMLTableElement.cpp => content/html/content/src/HTMLTableElement.cpp
rename : content/html/content/src/nsHTMLTableElement.h => content/html/content/src/HTMLTableElement.h
extra : rebase_source : 36ef4c094fdf54103ad3c41e299eb86d20956915
2012-12-29 09:08:15 +01:00
Jeff Walden
da2a57bc92 Whitespace tab-killing patrol. No bug, r=sparky 2013-01-04 17:00:43 -06:00
Jeff Walden
be7908afa3 Bug 824217 - Make ChromeObjectWrapper::getPropertyDescriptor not pretend no descriptor exists when the property exists along the prototype chain, when the property is being resolved just before an assignment. r=bholley 2013-01-03 17:55:58 -06:00
William Chen
7cd5470029 Bug 617532 - Implement UndoManager. r=ehsan 2013-01-03 22:54:26 -08:00
Jeff Walden
d9889b3184 Bug 826447 - Change all the proxy API signatures to take unsigned flags, rather than bool set, so that it's easier to find all tests of JSRESOLVE_ASSIGNING. r=bz
--HG--
extra : rebase_source : 3b88b411965087984d7973a90f8fa1b06457a6ce
2013-01-03 15:31:36 -06:00