Commit Graph

624 Commits

Author SHA1 Message Date
Peter Van der Beken
6fd0c1b877 Bug 738593 - Rename IsProxy to IsDOMBinding; r=mrbkap 2012-03-16 16:44:09 +01:00
Ms2ger
679b93a7ba Bug 736619 - remove the unused struct ClearedGlobalObject from XPCJSRuntime; r=bholley 2012-03-24 09:18:22 +01:00
Jared Wein
3f49c23fdd Backed out changeset 5f79a3dd45ff (bug 730318) r=bustage 2012-03-23 11:46:12 -07:00
Jared Wein
61ab14237c Bug 730318 - Implement a way for chrome js to enumerate the plugin objects on a page for activation. r=khuey 2012-03-22 13:53:59 -07:00
Hessam Salehi
25b8143afe Bug 474505 - Replace uses of nsVoidPtrHashkey with nsPtrHashKey<T>; r=bsmedberg 2012-03-21 14:07:31 -04:00
Igor Bukanov
f8a4496d31 bug 737624 - memory-only encoding/decoding of scripts and functions. r=:luke
The patch shrinks the API presented in jsxdrapi.h down to 4 functions to
encode/decode scripts and interpreted functions to/from the memory. The
newly introduced implementation header vm/Xdr.h replaces the former
JSXDRState with the template class XDRState parametrized by the enum
type with two constants, XDR_ENCODE and XDR_DECODE. This way a compiler
can fully eliminate the former runtime checks for the decoding/encoding
mode. As a drawback this required to explicitly instantiate the xdr
implementation as I do not want to put all the xdr code to header files.

The memory-only XDR allows to avoid coping filename and to-be-atomized
chars to a temporary buffer as the code can just access the buffer
directly. Another change is that new XDRScript takes as a parameter its
parent script. This allowed to avoid keeping filename in XDRState and
simplify the filename management.

Another change is the removal of JS_HAS_HDR. As CloneScript uses XDR to
copy a script, JS_HAS_XDR cannot be disabled.

--HG--
rename : js/src/jsxdrapi.cpp => js/src/vm/Xdr.cpp
2012-02-20 11:58:00 +01:00
Ms2ger
8775c56114 Backed out changeset f33e1e959036; r=bustage 2012-03-24 11:04:34 +01:00
Igor Bukanov
8e97874303 bug 737624 - memory-only encoding/decoding of scripts and functions. r=:luke
The patch shrinks the API presented in jsxdrapi.h down to 4 functions to
encode/decode scripts and interpreted functions to/from the memory. The
newly introduced implementation header vm/Xdr.h replaces the former
JSXDRState with the template class XDRState parametrized by the enum
type with two constants, XDR_ENCODE and XDR_DECODE. This way a compiler
can fully eliminate the former runtime checks for the decoding/encoding
mode. As a drawback this required to explicitly instantiate the xdr
implementation as I do not want to put all the xdr code to header files.

The memory-only XDR allows to avoid coping filename and to-be-atomized
chars to a temporary buffer as the code can just access the buffer
directly. Another change is that new XDRScript takes as a parameter its
parent script. This allowed to avoid keeping filename in XDRState and
simplify the filename management.

Another change is the removal of JS_HAS_HDR. As CloneScript uses XDR to
copy a script, JS_HAS_XDR cannot be disabled.

--HG--
rename : js/src/jsxdrapi.cpp => js/src/vm/Xdr.cpp
2012-02-20 11:58:00 +01:00
Bobby Holley
5213bf72dd Bug 733984 - Explicitly disallow shadowing on location wrappers. r=mrbkap
This was taken care of in other ways before, but we need to be more explicit about it now that we're doing more Xray stuff with Location wrappers.
2012-03-23 15:58:18 -07:00
Bobby Holley
f8fe97314f Bug 667388 - Introduce the PUNCTURE wrapper action. r=mrbkap 2012-03-23 14:59:27 -07:00
Bobby Holley
563b97de8f Bug 667388 - Make the chrome-to-content Xray wrapper derive CrossCompartmentWrapper. r=mrbkap
The current situation seems incorrect, especially given the behavior of CrossOriginWrapper and XrayProxy. Currently it doesn't matter, but it probably will in the future.
2012-03-23 14:59:27 -07:00
Bobby Holley
4a0cc78ae2 Bug 733984 - Apply Location wrappers for same-origin cross-compartment wrapping. r=mrbkap
This isn't an issue right now, since it can't ever happen outside of sandboxes, which content can't use. But if it could, it could get a pure CrossCompartmentWrapper to a Location object, which is bad.
2012-03-23 14:59:23 -07:00
Bobby Holley
da79fb87b2 Bug 733984 - Use the Location security policy even for content accessing chrome. r=mrbkap
I'm adding asserts about when we do and don't have a Location object behind the wrapper, and this case was hitting them. What we do here doesn't so much matter given how this stuff all works. On the one hand, statically using a restrictive policy is slightly more defense-in-depth. On the other hand, if this stuff is broken we're screwed in much more serious ways than content reading chrome locations, and using a consistent wrapper scheme allows us to make stronger asserts and assumptions.

I opted for stronger assumptions and more understandable security code. If Blake feels strongly though, I could go the other way and sprinkle '|| isChrome(obj)' throughout the asserts though.
2012-03-23 14:59:19 -07:00
Bobby Holley
1b0610af05 Bug 733984 - Clarify the security characteristics of Location objects. r=mrbkap
I was getting confused by some of the naming and lack of comments here.
2012-03-23 14:59:07 -07:00
Bobby Holley
ac2c44ee09 Bug 733984 - Stop specializing createHolder, and simplify holder creation in WrapperFactory::Rewrap. r=mrbkap 2012-03-23 14:59:04 -07:00
Jared Wein
3c05f07191 Backed out changeset 5f79a3dd45ff (bug 730318) r=bustage 2012-03-23 11:11:31 -07:00
Igor Bukanov
fbeb82e29f bug 730221 - delegating serialization of script principals to the embedding. r=:luke,:bz
Currently to serialize principals stored in JSScript we have a rather complex
schema. First there is the transcode callback that the embedding must provide
to transcode principals using XDR API. Second we use rather complex glue code
to implement that callback in terms of writing/reading nsIObjectOutputStream/
nsIObjectInputStream. This glue code is duplicated in 3 places. All this can
be avoided if we simply delegate transcoding of principals to the caller. In
addition, at least in the case of the cached startup scripts we do not even
need to transcode the principals as the the cached scripts always have the
system principal so we can skip all the transcode complexity there.

The patch implemnts this idea. In particular, the code in JS engine
responsible for transcoding of principals is replaced by the single API
function JS_XDRSetPrincipals that the embedding can use to set principals for
decoded scripts and functions. Then the startup cache uses this to set the
principals for the decoded script to the system principals. The other two
places in nsJSContext::Serialize and  XBL_SerializeFunction that need to
serialize principals together with a function or script now uses common
utilities in nsXPConnect so the serialization complexity resides in the single
 place.
2012-02-13 14:10:04 +01:00
Igor Bukanov
877dee50e1 bug 736978 - remove JS_FinalizeStub. r=:billm
Currently the GC finalizes on the background thread only objects with null
JSClass::finalize. However, this implies that any object that uses
JS_FinalizeStub for the finalizer would be prevented from the background
finalization.

To fix this the patch removes JS_FinalizeStub replacing it with NULL in all
cases when the class has no custom finalizer. For style consistency the patch
also removed the usage of JSCLASS_NO_OPTIONAL_MEMBERS in the static
declarations as the compiler fills the missing fields with null in any cases.
2012-03-19 15:27:58 +01:00
Prabindh Sundareson
b62d17df9a Bug 735594 - Add check for MOZ_JSDEBUGGER so that --enable-jsd=no works. r=bholley+khuey 2012-03-15 20:12:45 -04:00
Bobby Holley
7aa891a8c8 Bug 734475 - Take the full union of native sets when bringing non-PreCreate XPWNs across compartments. r=mrbkap 2012-03-16 12:47:20 -07:00
Peter Van der Beken
526e189372 Fix for bug 736229 (Stop storing expando objects in the wrapper cache, store the proxy instead). r=jst. 2012-03-14 15:22:10 +01:00
Marco Bonardo
ff249f47c5 Merge inbound and central 2012-03-16 13:42:16 +01:00
Ms2ger
126a61ae1e Bug 722154 - Part f: Remove custom quickstubs for vertexAttrib[1-4]fv; r=bjacob 2012-03-16 10:53:41 +01:00
Ms2ger
0fa822c551 Bug 722154 - Part e: Remove custom quickstubs for uniform[1-4][i,f]v and uniformMatrix[2-4]fv; r=bjacob 2012-03-16 10:52:42 +01:00
Ms2ger
6c8b1e6b1c Bug 722154 - Part d: Remove custom quickstub for readPixels; r=bjacob 2012-03-16 10:50:51 +01:00
Ms2ger
9fe057f15e Bug 722154 - Part c: Remove custom quickstubs for compressedTexImage2D and compressedTexSubImage2D; r=bjacob 2012-03-16 10:50:33 +01:00
Ms2ger
475f50510f Bug 722154 - Part b: Remove custom quickstub for bufferSubData; r=bjacob 2012-03-16 10:50:18 +01:00
Ms2ger
3b2c005617 Bug 722154 - Part a: Remove custom quickstub for bufferData; r=bjacob 2012-03-16 10:50:00 +01:00
Ms2ger
90fe48b371 Bug 550309 - Part e: Remove custom quickstub for getImageData and return an actual ImageData; r=bz 2012-03-16 10:48:55 +01:00
Ms2ger
364d2a12d3 Bug 550309 - Part c: Implement ImageData; r=bz 2012-03-16 10:44:08 +01:00
Bobby Holley
6261b39dd3 Bug 736316 - Components.utils.getGlobalForObject should unwrap cross-compartment wrappers. r=khuey 2012-03-15 19:47:06 -07:00
Ryan VanderMeulen
4c60195e21 Backout ca1873b20652 (bug 735594) due to mochitest-4 orange. r=http://i.qkme.me/36kr7a.jpg 2012-03-15 21:27:51 -04:00
Prabindh Sundareson
fd437e4fad Bug 735594 - Add check for MOZ_JSDEBUGGER so that --enable-jsd=no works. r=bholley 2012-03-15 20:12:45 -04:00
Blake Kaplan
7a4eeff601 Bug 727884 - Make nsWrapperCache::WrapObject take a JSObject scope instead of XPCWrappedNativeScope. r=peterv 2012-03-14 16:25:40 +01:00
Ekanan Ketunuti
6dd7569b81 Bug 722180 - Remove error codes for proxies. r=khuey 2012-02-01 18:53:29 +07:00
Bobby Holley
c9729c8e9a Bug 735544 - Allow exception stacks to cross compartment boundaries. r=luke 2012-03-15 15:19:52 -07:00
Kyle Huey
3232e8df17 No bug: Fix ply being stupid, take 2. r=me 2012-03-13 10:31:53 -07:00
Marco Bonardo
3e58667468 Merge last green PGO from inbound to central 2012-03-13 11:17:21 +01:00
Masatoshi Kimura
e441461b51 Bug 721569 - Implement Blob constructor. r=sicking 2012-03-12 21:44:56 -07:00
Masatoshi Kimura
c89a117b0c Bug 721569 - Implement nullable types. r=khuey 2012-03-12 21:44:51 -07:00
Masatoshi Kimura
1f2073f34c Bug 721569 - Support default values for Web IDL dictionaries. r=khuey CLOBBER BUILD 2012-03-12 21:44:48 -07:00
David Anderson
67bb3e5986 Remove JS_GetScriptedCaller (bug 732652, r=luke,mrbkap,bholley,smaug,bent). 2012-03-06 15:33:12 -08:00
Peter Van der Beken
c3b954ffff Add new DOM binding for SVG list classes. r=jst.
--HG--
extra : rebase_source : ce84f9457d7b9a14a0a65db5c643938d0e0e05bc
2011-08-22 11:14:13 +02:00
Peter Van der Beken
7c7ace6986 Fix for bug 734506 (Fix DOM list binding generation - fix bad argument throwing). r=jst.
--HG--
extra : rebase_source : b71d386827bb0114be6e68a696270868e487fe1c
2011-10-14 23:52:31 +02:00
Peter Van der Beken
eee1fec521 Fix for bug 734506 (Fix DOM list binding generation - add includes for all types). r=jst.
--HG--
extra : rebase_source : 113e8e7e98dfea4b67cfa5e08bd281c5f105ab92
2011-10-14 23:18:41 +02:00
Peter Van der Beken
96b0afb0da Fix for bug 734508 (Add new DOM binding for SVG list classes). r=jst.
--HG--
extra : rebase_source : c32d2fd124093ae437f000655bba7f3a5f17d99d
2011-08-22 11:14:13 +02:00
Peter Van der Beken
7d36526803 Backout 790be8926d50 to fix commit message
--HG--
extra : rebase_source : 930b7802b35784ef5d70ed359d5d9932013ad62d
2012-03-12 21:13:23 +01:00
Peter Van der Beken
c2e7269a78 Fix for bug 734505 (Add new DOM binding for FileList). r=jst.
--HG--
extra : rebase_source : 7a563b1af70c24f9117b813016b7a37612e92431
2011-08-22 11:14:13 +02:00
Peter Van der Beken
4d875e976f Fix for bug 734503 (Add new DOM binding for TouchList). r=jst.
--HG--
extra : rebase_source : 701eb8d9a60ffa981ebcd24f426109bd70cc5cbf
2011-08-22 11:14:13 +02:00
Peter Van der Beken
31fa18aab8 Fix for bug 734499 (Add new DOM binding for PaintRequestList). r=jst.
--HG--
extra : rebase_source : 37f4a1ea723db150abc07d66c6f167c27fd9c354
2011-08-22 11:14:13 +02:00
Peter Van der Beken
752e2223e7 Fix for new bug 734497 (Add new DOM binding for ClientRectList). r=jst.
--HG--
extra : rebase_source : 1cc96b94d21940ac1ed75ec6d46d9c2964fc54a0
2011-08-22 11:14:13 +02:00
Ms2ger
e016675b5e Bug 733872 - Use JS_GetObjectPrototype in XPCWrappedNativeScope::SetGlobal; r=bholley 2012-03-11 09:43:22 +01:00
Igor Bukanov
30d3de8268 bug 728250 - remove JSPrincipals::codebase. r=:luke,:bz
In just 2 cases where JSPrincipals::codebase is used it can be reconstructed from the values stored in the associated nsJSPrincipal. In addition the patch makes nsJSprincipals to inherit both from nsIPrincipal and JSPrincipals allowing to use static_cast to convert between nsIPrincipal and JSPrincipals pointers and to drop many cases of manual JSPrincipal reference counting.
2012-03-09 10:48:50 +01:00
Nicholas Nethercote
55f276020a Bug 732843 - Handle Callback() failures in memory multi-reporters. r=jlebar.
--HG--
extra : rebase_source : 54af85a1ef839922d5443cdc36f601611258944a
2012-03-04 15:26:30 -08:00
Matt Brubeck
465b97cf40 Merge mozilla-central to mozilla-inbound 2012-03-08 16:27:40 -08:00
Olli Pettay
4d4b25de9e Bug 730891, event ctor for StorageEvent, r=sicking,kyle 2012-03-08 23:27:05 +02:00
Christian Holler
c75048ad98 Bug 727445 - Add --enable-address-sanitizer for ASan specific workarounds. Add --enable-llvm-hacks to pass CFLAGS to NSS and omit -Wl,-z,defs for shared libs. r=khuey,kaie 2012-03-07 15:11:15 -08:00
Igor Bukanov
553cbdfc40 bug 730234 - remove GC locking from activities, operation callbacks-related code and for code that accesses the JSContext list. r=luke 2012-02-24 12:03:28 +01:00
Bobby Holley
53efbc78aa Bug 731804 - nsXPCWrappedJSClass::GetNamedPropertyAsVariant should jsvalify strings _after_ changing compartments. r=peterv 2012-03-08 11:13:34 -08:00
David Mandelin
68c407c176 Bug 733260 followup: use uint32_t for array and string lengths, r=luke
--HG--
extra : rebase_source : 1729b4b927fde0678872b9de62a7466381aa07c3
2012-03-06 15:52:55 -08:00
Bobby Holley
2dc291ee58 Bug 731845 - XPCWrappedNative::ReparentWrapperIfFound should handle preserved wrappers. r=mrbkap 2012-03-05 16:58:59 -08:00
Bill McCloskey
84718f7e90 Bug 729369 - Expose the same set of SpiderMonkey testing APIs to debug shell and debug browser chrome (r=Waldo) 2012-03-06 11:38:44 -08:00
Matt Brubeck
18cd6fbeaa Back out 2fbc7d9ac670 (bug 731845) on suspicion of causing test_native_mouse_mac.xul timeouts 2012-03-06 11:05:37 -08:00
Nicholas Nethercote
e93c8baf5c Bug 729403 (follow-up) - Use the right KIND for runtime/gc-marker, thus avoiding warnings about explicit mismatches. r=me.
--HG--
extra : rebase_source : 4625531f438d5e1e6a2e600134dee959a45e8204
2012-03-05 21:04:38 -08:00
Mark Hammond
6f18fbf7c7 Bug 728986: dump() writes to stdout instead of stderr. r=bent 2012-03-06 15:44:37 +11:00
David Mandelin
5e02d0630c Bug 733260: remove typedef jsuint, r=luke
--HG--
extra : rebase_source : e8f576e1b5b189b47807c613c0cff79f5c8038e7
2012-03-05 18:43:45 -08:00
Andrew McCreight
7f86c54ec3 Bug 723971 - unmark gray for shapes. r=billm 2012-03-05 18:11:29 -08:00
Bobby Holley
ac1fbc4a6a Bug 731845 - XPCWrappedNative::ReparentWrapperIfFound should handle preserved wrappers. r=mrbkap 2012-03-05 16:58:59 -08:00
Bobby Holley
ba4156b5cf Bug 720580 - Assert that we have the global jsclass flag if and only if we're a global. r=mrbkap 2012-03-05 15:22:53 -08:00
Bobby Holley
24197270eb Bug 720580 - Assert against creating globals in xpc_NewSystemInheritingJSObject. r=mrbkap
With this patch, the only call to JS_NewGlobalObject in XPConnect happens in xpc_CreateGlobalObject. \o/
2012-03-05 15:22:45 -08:00
Bobby Holley
87d7f5f353 Bug 720580 - Do the last bit of wrapped global initialization once the dust has settled. r=mrbkap 2012-03-05 15:22:45 -08:00
Bobby Holley
eb0a73527c Bug 720580 - Kill temporary globals. r=mrbkap
This patch breaks the "every commit is a 100% correct tree" invariant a little bit, because constructors and prototypes for DOM globals are broken (PostCreatePrototype never gets called). This is fixed in the next patch. Doing it this way makes for a cleaner series of commits, and the browser still builds and runs fine.
2012-03-05 15:22:45 -08:00
Bobby Holley
f43429b675 Bug 720580 - Introduce XPCWrappedNative::WrapNewGlobal. r=mrbkap 2012-03-05 15:22:45 -08:00
Bobby Holley
3523199f9a Bug 720580 - Call TraceDOMPrototypes via TraceXPCGlobal, and avoid the verification process for wrapped natives. r=mrbkap 2012-03-05 15:22:45 -08:00
Bobby Holley
4b0b1b7f62 Bug 720580 - Make the call to PostCreatePrototype optional. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
d5786b3e4f Bug 720580 - Factor out the call to PostCreatePrototype into a helper method. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
221605656b Bug 720580 - Accept an explicit native global during XPCWrappedNativeScope creation. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
fa19fcd55d Bug 720580 - Manually resolve |Object| on the global in XPCWrappedNativeScope::SetGlobal() to avoid calling into the XPConnect resolve hook too early. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
9146075c05 Bug 720580 - Make JSID class initialization happen on demand. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
1d80caf8a2 Bug 720580 - Modify the semantics of XPCWrappedNative::FinishCreate() so that it doesn't muck around with the refcounts of its inparam. r=mrbkap
The current semantics involve the caller transfering ownership of the input wrapper to FinishCreate(), which is complicated and error-prone. Now that we're using nsRefPtr at the callsites, we can get rid of it.
2012-03-05 15:22:44 -08:00
Bobby Holley
dd0c70edd5 Bug 720580 - Use nsRefPtr instead of manual AddRef/Release in XPCWrappedNative::{GetNewOrUsed,Morph}. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
5115bb9cb6 Bug 720580 - Move the AutoMarkingWrappedNativePtr in XPCWrappedNative::{GetNewOrUsed,Morph} closer to where we need it. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
fe4872737f Bug 720580 - Stop passing isGlobal everywhere and use the nsIXPCScriptable flags instead. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
ccb745bc93 Bug 720580 - Stop passing aExtraPtr to InitClassesWithNewWrapedGlobal. r=mrbkap
We only ever pass null here anyway, and this whole infrastructure is going away real soon now.
2012-03-05 15:22:44 -08:00
Bobby Holley
2cb54e998b Bug 720580 - Remove unnecessary aIID parameter from nsIXPConnect::InitClassesWithNewWrappedGlobal. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
f43e9eb936 Bug 720580 - Introduce a flag for global natives and assert that we have it. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
c03737bfa1 Bug 720580 - Indicate free bits in nsIXPCScriptable.idl. r=mrbkap 2012-03-05 15:22:43 -08:00
Ed Morley
d27ab2302c Backout afeafc02c1de, dfae37833c9b & f9f51c726fa7 (bug 729940 parts 1-3) for talos regressions 2012-03-05 15:22:28 +00:00
Justin Lebar
eabf2efeae Bug 729940 - Part 2: Stop using crappy hash functions in the js engine. r=bhackett 2012-03-04 15:58:06 -05:00
Justin Lebar
8f94cc1764 Back out bug 729940 (a108aee:d75775d) due to 32-bit red. 2012-03-04 14:20:34 -05:00
Justin Lebar
379c6ab88b Bug 729940 - Part 2: Stop using crappy hash functions in the js engine. r=bhackett 2012-03-04 13:49:41 -05:00
Matheus Kerschbaum
89b7db65ac Bug 687579 part 1: Remove globalStorage implementation. r=jst
Bug 687579 part 1: Remove globalStorage implementation. r=jst
2011-10-09 22:14:00 -04:00
Peter Van der Beken
52dc54f3e9 Fix for bug 732175 (Generate DOM list bindings that aren't controlled by the dom.new_bindings pref and remove old bindings for NodeList/HTMLCollection/HTMLOptionsCollection). r=jst.
--HG--
extra : rebase_source : 2eeeec059fe3467769ebcc5af01c8d472c2afbb6
2012-02-27 18:02:47 +01:00
Peter Van der Beken
c1cb66d9c8 Fix for bug 717013 (Add new DOM binding for DOMTokenList). r=jst.
--HG--
extra : rebase_source : 6ae0abe3bbe33a140c62c193685e23529d44e6d4
2011-08-22 11:14:13 +02:00
David Mandelin
e2e9eb9eb3 Bug 731898: Remove typedef jsrefcount, r=luke
--HG--
extra : rebase_source : 1e0c99c44a8d6d2807a647273b1d07691f8c983e
2012-03-01 11:43:17 -08:00
Marco Bonardo
d433f51394 Backout 51bff179fa81 (bug 731898) for Android bustage 2012-03-01 21:57:14 +01:00
David Mandelin
64337d4c17 Bug 731898: Remove typedef jsrefcount, r=luke 2012-03-01 11:43:17 -08:00
Igor Bukanov
182e2dd994 bug 723286 - remove JSContext * parameter from heap-traversal and related API. r=:billm 2012-02-29 21:23:38 +01:00
Bobby Holley
e6beee84d8 Bug 731471 - Don't reparent wrappers that don't want to move. r=peterv 2012-02-29 21:21:57 -08:00
Matt Brubeck
710e5b9000 Back out 2778f515ed5a (bug 723286) on suspicion of causing OSX64 crashes 2012-02-29 16:18:22 -08:00
Igor Bukanov
267b62cdb3 Bug 731618 - remove JSContext * parameter from heap iteration API. r=:Billm 2012-02-29 21:23:53 +01:00
Igor Bukanov
2139e49ce8 bug 723286 - remove JSContext * parameter from heap-traversal and related API. r=:billm 2012-02-29 21:23:38 +01:00
Bill McCloskey
594ab1a09f Bug 731052 - Clean up incremental resets (r=igor) 2012-02-29 10:28:30 -08:00
Igor Bukanov
3732e3e290 bug 730281 - remove cx argument from GC and compartment related functions. r=:billm 2012-02-29 13:18:16 +01:00
David Mandelin
0be0db4666 Bug 730511: remove obsolete typedefs intN, uintN, r=luke 2012-02-28 15:11:11 -08:00
Nicholas Nethercote
9727de241c Bug 729403 (part 2, take 2) - Add js/runtime/gc-marker memory reporter. r=wmccloskey.
--HG--
extra : rebase_source : c48aacddd186be0de3c74153f5e5e4049d09a87b
2012-02-26 20:20:15 -08:00
Phil Ringnalda
2e98180c3d Back out a7255af10a2a and da193f5b526b (bug 729403) for xpcshell assertions in test_TelemetryPing.js 2012-02-26 18:39:06 -08:00
Nicholas Nethercote
7d90bc00d0 Bug 729403 (part 2) - Add js/runtime/gc-marker memory reporter. r=wmccloskey.
--HG--
extra : rebase_source : 9f078515b971e3de4156bb3edd3f8aea74c9fa8f
2012-02-21 21:43:45 -08:00
Nicholas Nethercote
f65c98bbba Bug 730182 - Show location for "[System Principal]" compartments in about:compartments. r=bholley.
--HG--
extra : rebase_source : 084b36938e00058503fba426aeb42ca5cd85698d
2012-02-26 13:23:32 -08:00
Peter Van der Beken
3b0644136d Fix for bug 691707 (Enumerating new proxy-based DOM bindings should enumerate the prototype too). r=mrbkap.
--HG--
extra : rebase_source : 788c2b3f9666ca654fab67047f6309937360f725
2012-02-07 20:55:37 +01:00
L. David Baron
5c4dc186ed Add a header file for CSS property aliases (and temporarily resurrect the aliases whose DOM properties we forgot to remove). (Bug 730532, patch 1) r=bzbarsky 2012-02-24 21:23:14 -08:00
David Mandelin
59dcf8cdf7 Bug 725550: remove obsolete typedef jsdouble, r=jwalden 2012-02-24 14:19:52 -08:00
Marco Bonardo
74afb56c79 Backout 4fc2f49371a8 (bug 725550) for build failures 2012-02-25 00:16:47 +01:00
David Mandelin
ad7cda83f5 Bug 725550: remove obsolete typedef jsdouble, r=jwalden
--HG--
extra : rebase_source : 772c2982184d7b3d1680737323395365e6b218da
2012-02-24 14:19:52 -08:00
Marco Bonardo
bcb8184750 Backout 92c25caf3990 (bug 691707) for m-oth failures 2012-02-24 20:05:44 +01:00
Peter Van der Beken
6bb126a26b Fix for bug 691707 (Enumerating new proxy-based DOM bindings should enumerate the prototype too). r=mrbkap.
--HG--
extra : rebase_source : 2877f225f60750d27005fccc0225e5c0482fb441
2012-02-07 20:55:37 +01:00
Daniel Holbert
72dfdfe8df Bug 730074: Use JSCLASS_NO_OPTIONAL_MEMBERS in JSClass definition within XrayWrapper.cpp, to fix build warning about missing braces. r=mrbkap 2012-02-24 14:31:49 +01:00
Richard Newman
f8f9fa6f5d Merge m-c to m-i. 2012-02-23 18:37:12 -08:00
Richard Newman
85840c2035 Merge last win pgo-green changeset from m-i to m-c. 2012-02-23 18:35:17 -08:00
Ben Turner
7af9098625 Backed out changeset 1f3643b7de2d 2012-02-23 07:09:11 -08:00
Ben Turner
3dc2527e7f Bug 717414 - 'Telephony: Make calls array live'. r=sicking. 2012-02-23 03:48:35 -08:00
Florian Boesch
fc9e33241d Bug 728354 - Implement WebGL EXT_texture_filter_anisotropic extension *proposal* - r=bjacob
The spec proposal for this extension is at
  https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/extensions/proposals/EXT_texture_filter_anisotropic/index.html

This adds a conformance test as well, that will have to be merged upstream.
2012-02-23 08:43:57 -05:00
Kyle Huey
8482a5faf3 Bug 728429: Require ASLR for binary components on Windows. r=bsmedberg,ehsan 2012-02-22 15:05:28 -08:00
Phil Ringnalda
83cb7a525c Back out b27980f1de54 and 39ea8d8f9768 (bug 728429) for potential Windows PGO build bustage on a CLOSED TREE 2012-02-21 20:01:01 -08:00
Kyle Huey
e45a96deb7 Bug 728429: Require ASLR for binary components on Windows. r=bsmedberg,ehsan 2012-02-21 16:09:39 -08:00
Ed Morley
465164e131 Merge mozilla-central to mozilla-inbound 2012-02-21 14:15:58 +00:00
Ed Morley
ec5a7c5b3d Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2012-02-21 11:59:33 +00:00
Ms2ger
5ed0ff5c65 Bug 726964 - Remove unused sDOMStringFinalizerIndex; r=bholley 2012-02-21 10:34:02 +01:00
Ms2ger
1944749327 Bug 726960 - Introduce xpc::NonVoidStringToJsval; r=bholley 2012-02-21 10:34:02 +01:00
Nicholas Nethercote
f407686454 Bug 702300 (part 8) - Add about:compartments. r=jlebar, ehsan.
--HG--
extra : rebase_source : ad9de010f0b51d5ae7d74b8cbc04c8748767ec0b
2012-02-16 22:10:39 -08:00
Nicholas Nethercote
c34bc1317f Bug 702300 (part 7) - Add the "compartments" multi-reporter. r=billm.
--HG--
extra : rebase_source : e45e59bd8657197dbd61c257f46ad6396cdda3c3
2012-02-16 22:10:39 -08:00
Luke Wagner
e360e8fdf0 Bug 729584 - mozJSComponentLoader::ImportInto needs to wrap exceptions (r=bholley)
--HG--
extra : rebase_source : c5c575a789647348fcca5bf9ef5368873f0016f4
2012-02-23 13:50:01 -08:00
Igor Bukanov
87ee03b495 bug 726944 - Remove JSClass::xdrObject and related functionality. r=luke 2012-02-13 09:02:21 +01:00
Bobby Holley
196a0a6768 Bug 700561 - Relax short-circuit principal checks on account of inner window reuse. r=bz 2012-02-18 08:55:28 -08:00
Bill McCloskey
c6cd982f05 Bug 641025 - Incremental GC (r=igor,smaug,roc,cdleary,gregor) 2012-02-17 14:35:20 -08:00
Bobby Holley
fe2e5fde31 Bug 714590 - Use the helper jsclass format everywhere. r=mrbkap 2012-02-16 12:22:16 -08:00
Terrence Cole
ed5d8783f0 Bug 726115 - Make the tracer callback take an indirect pointer; r=billm
This will be required for a tracer to move objects.  This patch only
updates the tracer interface and users of the interface.

--HG--
extra : rebase_source : 844d819a80cf6cb1dba0d07ea97f647802c66d40
2012-02-15 16:28:41 -08:00
Jeff Walden
7086420197 Convert the last remaining direct JS_Assert users to MOZ_Assert, followup to bug 717540 that seems to have been missed in my initial review. Also switch the JS_ASSERT uses to MOZ_ASSERT in passing. r=trivial
--HG--
extra : rebase_source : 70746d934b529c3e28d83dc2aced690ba92044db
2012-02-14 16:16:14 -08:00
Olli Pettay
49ff9c7a84 Bug 725768 - BBP for ObjectHolders, additional patch 2, r=mccr8 2012-02-13 22:59:14 +02:00
Bill McCloskey
03499f06a0 Bug 716067 - UnmarkGray more often (r=bent) 2012-02-10 18:32:13 -08:00
Phil Ringnalda
aa7113899f Back out 5f623a11c6cb (bug 713226), 1ed8ccf96402 (bug 721579), 32af27f89c49 (bug 722028), 1300d282fd22 (bug 716067), dc0f6ad7eff3 (bug 723313), 0d2ab3f2e9b9 (bug 723773) for talos crashes 2012-02-10 19:47:48 -08:00
Bill McCloskey
c96a433a29 Bug 716067 - UnmarkGray more often (r=bent) 2012-02-10 18:32:13 -08:00
Olli Pettay
0fe1640d6b Bug 725768 - BBP for ObjectHolders, r=mccr8
--HG--
extra : rebase_source : 31e088050144099582d035f758d716516885ebd3
2012-02-10 21:50:37 +02:00
Ed Morley
04d8171793 Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2012-02-10 12:14:39 +00:00
Ms2ger
ccee066e87 No bug - Propagate false return value from xpc_qsThrowMethodFailedWithDetails; r=bz 2012-02-07 21:31:29 +01:00
Jeff Walden
e46b0ed4d4 Bug 725888 - Remove some js_GetClassPrototype calls, using faster methods on GlobalObject instead. Also introduce JS_GetObjectPrototype to retrieve Object.prototype so that a friend API can be made un-friendly. r=dmandelin
--HG--
extra : rebase_source : d68d7f1fdcc1bc9a1a027c08ea62bebd8e9d0178
2012-02-07 11:45:18 -08:00
Igor Bukanov
18e6a2e079 bug 724310 - drop cx argument from JSObject field and fixed slots infallible API. r=:Waldo
--HG--
extra : rebase_source : b78519db2ff008eb5143676d2db47935f0e89f45
2012-02-05 21:07:23 +01:00
Igor Bukanov
eb3cfce3dc backout merge for bug 724310. r=irc 2012-02-09 21:28:22 +01:00
Igor Bukanov
efe64d22c0 bug 723517 - drop cx argument from JSObject field and fixed slots infallible API. r=:Waldo
--HG--
extra : rebase_source : c461dfc0e0e0462ab262cc01c2a771d3bb0971cc
2012-02-05 21:07:23 +01:00
Bobby Holley
29328b7b57 Bug 622301 - Remove now-obsolete 'callee' parameter. r=mrbkap 2012-02-07 18:06:41 -08:00
Bobby Holley
09d06adbcf Bug 622301 - Don't use XPCWrappedNative::GetWrappedNativeOfJSObject in quickstub unwrapping. r=mrbkap 2012-02-07 18:06:34 -08:00
Igor Bukanov
672b98ffbe bug 660441 - removal of cx parameter from IsAboutToBeFinalized. r=anygregor 2012-02-08 01:51:32 +01:00
Andrew McCreight
ed6da3301f Bug 696174 - Log JS heap at the same time as CC heap. r=bholley,smaug 2012-02-02 16:32:30 -08:00
Igor Bukanov
249bae9bfd bug 724810 - storing finalizer in external strings directly. r=luke
--HG--
extra : rebase_source : d3222c685190bbdbe9446628f2f73f2a6f81eb11
2012-02-07 19:44:54 +01:00
Jason Orendorff
4e6e2ddc69 Bug 699565 - Part 4 - for-of loops on array-like DOM object. r=bz. 2012-02-07 12:57:17 -06:00
Marco Bonardo
3cb51695d8 Bug 722254 - Add an XPCOMUtils method to generate a singleton factory.
Use the new factory in Places js services, to ensure they can't be instanced multiple times.
r=bsmedberg
2012-02-07 10:17:42 +01:00
Nicholas Nethercote
ddd936d488 Bug 689583 - Add names for memory multi-reporters. r=jlebar.
--HG--
extra : rebase_source : adb3fb2cbbb8a07b60edd48c7dc9a3a4a4763b79
2012-02-06 17:02:59 -08:00
Andrew McCreight
e74e061086 Bug 724398 - specialize GCThingIsMarked to GRAY. r=billm 2012-02-05 19:43:35 -08:00
Nicholas Nethercote
aada2ed431 Bug 722609 - Rename the js-total memory reports. r=luke. 2012-01-30 20:03:29 -08:00
Nicholas Nethercote
a1ab9492f5 Bug 722595 - Add memory reporters for misc things hanging off JS objects. r=bhackett.
--HG--
extra : rebase_source : 211b35134923f4cb99625bb240b96e81f0f28b4b
2012-01-30 18:12:03 -08:00
Masatoshi Kimura
885fc84d72 Bug 723894 - Crash when Web IDL dictionary object is null; r=mrbkap 2012-02-05 18:57:46 +00:00
Igor Bukanov
afb57a37a5 bug 723517 - Drop cx argumrent from JS_GetClass(cx, obj). r=luke 2012-02-04 01:54:57 +01:00
Luke Wagner
b78ff5f631 Bug 722594 - Remove xpc_CreateMTGlobalObject and mMTCompartmentMap (r=mrbkap)
--HG--
extra : rebase_source : 6dd76009eb8029499efcbe6bbb0b74d58000612c
2012-02-01 13:36:51 -08:00
Luke Wagner
492489ef53 Bug 692269 - Remove jsstr.h, vm/String.h, jsautokw.h, jsclone.h, jsopcode.tbl, jsopcode.h, jsstdint.h from INSTALLED_HEADERS (r=billm)
--HG--
extra : rebase_source : f9e20f1d52987251ad3d58c76531dcd5135076ad
2012-01-30 09:17:38 -08:00
Blake Kaplan
2718588789 Bug 723111 - Add an option to js::UnwrapObject so that it doesn't stop at outer windows when unwrapping. This is useful for cases where we are trying to find the wrapped native for a security wrapper. r=bzbarsky 2012-01-26 14:55:27 +01:00
Igor Bukanov
08ee5eda35 bug 723021 - moving native stack limits into runtime. r=luke 2012-01-31 23:28:22 +01:00
Phil Ringnalda
23ca89ddfb Back out 9aac714775b9 (bug 723111) for make check orange 2012-02-01 10:25:04 -08:00
Blake Kaplan
7cce8db259 Bug 723111 - Add an option to js::UnwrapObject so that it doesn't stop at outer windows when unwrapping. This is useful for cases where we are trying to find the wrapped native for a security wrapper. r=bzbarsky
--HG--
extra : rebase_source : 51216cf21b63554e50633c89f393c5888241dee2
2012-01-26 14:55:27 +01:00
Peter Van der Beken
5be8d4ae29 Fix for bug 717009 (Inline ListBase<LC>::instanceIsListObject and ListBase<LC>::getListObject). r=bz.
--HG--
extra : rebase_source : 368514fa942cb31751e5c6b4ff9d206c1bb609bc
2011-11-09 11:37:47 +01:00
Peter Van der Beken
8f4abab950 Fix for bug 716997 (Allow new DOM bindings with 0 methods or properties). r=jst.
--HG--
extra : rebase_source : 2b16fa38254362cdedc136a8a4b07261ab2f6a76
2011-10-14 23:21:39 +02:00
Peter Van der Beken
0fc6b252db Fix for bug 693811 ("Assertion failure: shouldCacheProtoShape(cx, proto, &shouldCache) && shouldCache" in ListBase::nativeGet). r=mrbkap.
--HG--
extra : rebase_source : 5baa4b1afeecf64e7f1945869e9cd2ae9045b44c
2011-10-14 23:29:36 +02:00
Boris Zbarsky
a16c2d5b2f Bug 722729. Expose a public API for LinkConstructorAndPrototype. r=bhackett 2012-01-31 22:40:49 -05:00
Nicholas Nethercote
2806f8e46a Bug 671299 (part 3) - Add style sheet memory reporters. r=dbaron. 2012-01-02 18:19:14 -08:00
Brian Hackett
3fad42139d Don't run compile-and-go scripts on globals with a cleared scope, bug 680456. r=dmandelin 2012-01-31 16:36:07 -08:00
Sander van Veen
b8326718a6 Bug 681556 - Default sandboxName to the caller's filename. r=mrbkap. 2012-01-30 20:06:41 -08:00
Nicholas Nethercote
99f6891b58 Bug 721628 (part 5) - Use size_t instead of int64_t in some JS memory reporting structs. r=luke.
--HG--
extra : rebase_source : c3e13b8042b8914ae16cee38b0299f6164ba9222
2012-01-29 14:13:18 -08:00
Nicholas Nethercote
b88e427016 Bug 721628 (part 4) - Use better names for various JS memory reporting things. r=Ms2ger.
--HG--
extra : rebase_source : 4edc916c571906329075b6be68c245267f9b61d0
2012-01-29 14:11:32 -08:00
Nicholas Nethercote
a686663b5d Bug 721628 (part 3) - Rename several size type-inference-related measurement functions and types. r=bhackett.
--HG--
extra : rebase_source : e66bc2d787c31de93ff80280597543cf47924967
2012-01-26 19:09:31 -08:00
Nicholas Nethercote
cb6170460f Bug 721628 (part 2) - Remove mention of slop bytes from JS memory reporter descriptions. r=luke.
--HG--
extra : rebase_source : f9babd22a734eae87a5f671f8ac405939d27e690
2012-01-26 05:55:03 -08:00
Igor Bukanov
9eb0ae5f93 bug 722348 - eliminate JSRuntime::requestCount. r=luke 2012-01-30 11:15:13 +01:00
Jon Buckley
ec8f21a6ca Bug 721230 - Implement a compressed texture support stub for WebGL conformance. r=bjacob 2012-01-28 16:15:27 -05:00
Andrew McCreight
f5ad40b334 Bug 693527 - tell the cycle collector about watchpoints. r=jorendorff 2012-01-27 17:13:21 -08:00
Peter Van der Beken
17cd65acea Back out 570dd369e02a, bc777c65c5ca and 12a483042e9a to fix bustage 2012-01-27 15:34:30 +01:00
Peter Van der Beken
a315c8f9b9 Fix for bug 717009 (Inline ListBase<LC>::instanceIsListObject and ListBase<LC>::getListObject). r=bz.
--HG--
extra : rebase_source : 661d5fc98c76506ab6abccd057a0ce1e8cf6b0f8
2011-11-09 11:37:47 +01:00
Peter Van der Beken
92dc06c0ef Fix for bug 716997 (Allow new DOM bindings with 0 methods or properties). r=jst.
--HG--
extra : rebase_source : c6a702d61a75bae8e328d9cda6a717d75829ebf3
2011-10-14 23:21:39 +02:00
Peter Van der Beken
234f42c6e0 Fix for bug 693811 ("Assertion failure: shouldCacheProtoShape(cx, proto, &shouldCache) && shouldCache" in ListBase::nativeGet). r=mrbkap.
--HG--
extra : rebase_source : 191e550e9aac822f82e771a5a21fe74f90f728cb
2011-10-14 23:29:36 +02:00
Marco Bonardo
650ada821b Merge mozilla-central to mozilla-inbound 2012-01-26 19:34:35 +01:00
Olli Pettay
2130de6646 Bug 720686, add some cycle collection optimizations to XPC, f=mrbkap,r=mccr8
--HG--
extra : rebase_source : 7e8f68a30048f613acc99201c3c1e12b6f74eaba
2012-01-26 14:52:25 +01:00
Bill McCloskey
b5b7133e4b Bug 706227 - Add way for JS_GC API users to give detailed reason for invocation (r=mccr8) 2012-01-25 10:59:55 -08:00
Nicholas Nethercote
a7ad4ef70e Bug 715453 - Remove computedSize from nsMallocSizeOfFun. r=jlebar,bhackett.
--HG--
extra : rebase_source : a65039a407daab45360a5b375b53cbf1bc05b7f6
2012-01-25 00:52:51 -08:00
Nicholas Nethercote
bdcd8d9251 Bug 720219 (part 1) - Clean up JS object measurement. r=bhackett.
--HG--
extra : rebase_source : ff9aa7da84814e6868fef88b56bcb038389d5fb9
2012-01-23 15:35:37 -08:00
Luke Wagner
deb78ef5af Bug 675078 - rm JSThreadData and JSThread (JSRuntime is now officially single-threaded) (r=igor,rs=mccr8)
--HG--
extra : rebase_source : f6d2c2c6083f4589691ede571159bfd7e7ef8701
2011-07-18 14:54:48 -07:00
Matt Brubeck
54f0eed49e Back out 79deba022227 (bug 675078) because of Win debug mochitest-other failures 2012-01-24 17:32:30 -08:00
Luke Wagner
411fc35146 Bug 675078 - rm JSThreadData and JSThread (JSRuntime is now officially single-threaded) (r=igor) 2011-07-18 14:54:48 -07:00
Nathan Froyd
e0439c9672 Bug 714365 - DictionaryHelpers.cpp gets rebuilt on every build. r=ted 2012-01-23 07:55:21 -08:00
Ben Turner
c043698ddd Bug 705640 - Implement DOMError as defined in DOM 4, r=mounir.
--HG--
extra : transplant_source : %15%98Xx%C3%F3%89%95%94%5Eu%99%B0%CC%8B%E0V%3A4%C6
2012-01-24 02:13:41 -08:00
Bill McCloskey
37bab689c0 Bug 716033 - Move write barriers from jsapi.h to jsfriendapi.h (r=luke,bholley) 2012-01-23 16:43:12 -08:00
Andrew McCreight
8a73fee0b0 Bug 720292 - add more cycle collector edge names. r=smaug 2012-01-23 15:25:53 -08:00
Ed Morley
52a93f5d13 Backout 143f01714f2b (bug 705640) for build failures 2012-01-23 14:25:47 +00:00
Ben Turner
00f78a4ed3 Bug 705640 - 'Implement DOMError as defined in DOM 4'. r=mounir. 2012-01-23 03:02:54 -08:00