Граф коммитов

3906 Коммитов

Автор SHA1 Сообщение Дата
Jan de Mooij 4e84888995 Bug 1034627 part 8 - Fix XPCConvert to work with Latin1 strings and nursery strings. r=bholley 2014-07-11 16:22:39 +02:00
Jan de Mooij bcdc561427 Bug 1034627 part 5 - Make quick stubs work with Latin1 strings and nursery strings. r=bz 2014-07-11 16:22:35 +02:00
Jan de Mooij cda5c814db Bug 1034627 part 6 - Fix XPCVariant to work with Latin1 strings and nursery strings. r=bholley
--HG--
extra : rebase_source : be029c174195192570da688250583157825e9e06
2014-07-11 09:38:55 +02:00
Jan de Mooij 42fd43e50e Bug 1034627 part 4 - Fix XPCComponents and XPCWrappedJSClass to work with Latin1 strings and nursery strings. r=bholley
--HG--
extra : rebase_source : 82d0a3ab83d9f10391da38c5c658627d1701f07a
2014-07-11 09:36:20 +02:00
Carsten "Tomcat" Book ce57787693 Backed out changeset cf85693280c7 (bug 886570) frequent mochitest-3 errors on windows 2014-07-11 14:15:29 +02:00
Carsten "Tomcat" Book 4a0de0298f Backed out changeset f78470faff8e (bug 1034627) Valgrind Test failures on a CLOSED TREE 2014-07-11 11:00:52 +02:00
Carsten "Tomcat" Book eb71d8cf86 Backed out changeset 110e44b996f8 (bug 1034627) for Valgrind Testfailures on a CLOSED TREE 2014-07-11 11:00:21 +02:00
Jan de Mooij 8ff8c31410 Bug 1034627 part 6 - Fix XPCVariant to work with Latin1 strings and nursery strings. r=bholley 2014-07-11 09:38:55 +02:00
Jan de Mooij 117c8ed18c Bug 1034627 part 4 - Fix XPCComponents and XPCWrappedJSClass to work with Latin1 strings and nursery strings. r=bholley 2014-07-11 09:36:20 +02:00
Ahmed Kachkach 50db9012f6 Bug 886570 - Initial integration of structured logs in mochitest. r=ahal,Ms2ger 2014-07-10 13:33:00 +02:00
Chris Peterson 6f5eb4b6c9 Bug 1036778 - Replace MOZ_ASSUME_UNREACHABLE with MOZ_CRASH in js/xpconnect. r=bholley 2014-06-29 20:42:36 -07:00
Bill McCloskey b7f2ddaeba Bug 1029248 - Allow CPOWs to be converted to native interfaces (r=mrbkap) 2014-07-10 16:47:26 -07:00
Bill McCloskey e03b6322a0 Bug 1029248 - Clean up CPOW unwrapping (r=mrbkap) 2014-07-10 16:47:04 -07:00
Ms2ger 1a551c7ee8 Backout changeset 69c0707a144a for crashes on a CLOSED TREE. 2014-07-10 21:04:26 +02:00
Ms2ger 86555a0dfd Bug 1036777 - Remove the useAllocator argument to XPCConvert::JSData2Native; r=bholley
It turns out the useAllocator argument is only used for the dipper types
(nsXPTType::{T_ASTRING, T_DOMSTRING, T_UTF8STRING, T_CSTRING}), while we
only pass true in cases where we don't have a dipper type:

* XPCConvert::JSArray2Native errors on those types;
* GetNamedPropertyAsVariantRaw() passes an interface type;
* nsXPCWrappedJSClass::CallMethod passes !param.IsDipper() for the first
  calls and only reaches the last call for dependent types, which do not
  include any of the dipper types;
* CallMethodHelper::ConvertIndependentParam handles dipper types earlier
* and CallMethodHelper::ConvertDependentParam handles dependent types.
2014-07-10 20:23:24 +02:00
Bobby Holley c6ad0230b3 Bug 1034262 - Honor the wantXrays of both sides of the membrane when computing same-origin wrappers. r=gabor
The basic problem in the testcase is that one compartment requests same-origin
Xrays via wantXrays=true (the default for Sandboxes) while the other does not.
The current code only considers the wantXrays flag of the compartment performing
the access, so we end up in a situation where we have same-origin compartments,
but Xray in one direction and Transparent in the other.

This is a problem for crossCompartmentFunction.apply(null, [arg]). If both
globals get transparent wrappers, there's obviously no problem. And if both
globals get XrayWrappers, then the |apply| happens on the XrayWrapper of the
function in the caller's compartment. So the Array is unpacked in the caller's
compartment, and again we have no problem.

But if the caller gets Transparent and the callee gets Xrays, then we end up
invoking |apply| from the callee's side, which then gets an XrayWrapper to the
array. This XrayWrapper may do surprising things, leading to the odd situation
in the testcase.

Same-origin Xrays are kind of broken anyway, but I don't think we'll ever be
able to get rid of them. So the most sensible thing to do is probably to honor
the flag (if set) from either compartment. This patch does that.
2014-07-10 10:04:30 -07:00
Bobby Holley 4a9f9e844b Bug 1034239 - Replace GentlyOpaque with an "Xray-to-nothing" wrapper. r=gabor
I did this wrong before. Making this a SecurityWrapper means that the caller does
not subsumes the target, and that the target therefore needs to be protected
from the caller. But GentlyOpaque was supposed to be an analog of PermissiveXray
for use when no useful XrayTraits exist, so it should behave similarly.

If we make this a Filtering Security Wrapper, we get a bunch of assertions where we
expect CheckedUnwrap to succeed for a chrome-side wrapper. And we can't making it
a Filtering Non-Security Wrapper, because then the filtering policy isn't even
consulted (an optimization in jsproxy.cpp).

Really, we want all of the Xray machinery (like the ability to waive and to place
expandos), and we just don't want to resolve any properties. This patch does this.
2014-07-10 09:31:37 -07:00
Bobby Holley bba8240dd7 Bug 1034239 - Add Proxies to ForceCOWBehavior. r=gabor 2014-07-10 09:31:37 -07:00
Jan de Mooij b986e6ec0f Bug 1034627 part 3 - Fix SandboxDump, AccessCheck.cpp to work with Latin1 strings and nursery strings. r=bholley 2014-07-10 17:36:35 +02:00
Jan de Mooij edbd6779df Bug 1034627 part 2 - Fix xpconnect Dump and Print functions to work with Latin1 strings and nursery strings. r=bholley 2014-07-10 17:36:33 +02:00
Brian Hackett 00d8fa7118 Bug 1021790 - "Cleanup naming for scalar and typed array types", r=sfink 2014-06-06 09:36:00 -07:00
Jeff Walden 7a88795a72 Bug 953296 - Make the source-hook mechanism use mozilla::UniquePtr. r=jimb
--HG--
extra : rebase_source : c285fec8b38790fe78e3f29106011a928e12322e
2013-12-30 13:34:54 -06:00
Bobby Holley ec0078e10d Bug 1033927 - Drop support for custom [object XrayWrapper [object ClassName]] stringification. r=peterv 2014-07-07 13:11:24 -07:00
Jan de Mooij 44da586636 Bug 1034191 - Make nsDependentJSString users work with Latin1 strings and nursery-allocated strings. r=bz 2014-07-05 17:30:54 +02:00
Bobby Holley f0dce63c2c Bug 1029933 - Introduce and use ParentKeyForStandardClass. r=Waldo 2014-07-04 12:41:28 -07:00
Bobby Holley 98413afdad Bug 1029933 - Introduce the concept of "dependent" standard classes and handle them in the ClassSpec infrastructure. r=Waldo 2014-07-04 12:41:28 -07:00
Bobby Holley 1c19351c9a Bug 1029933 - Give BackstagePass an Enumerate hook to match its NewResolve hook. r=Waldo
This is required in order to avoid exposing resolve hook effects when
Object.freeze() is invoked on the global. The freeze() call first enumerates
the object, after which point any lazy properties need to be resolve so that
we can safely mark the object as non-extensible.
2014-07-04 12:41:27 -07:00
Boris Zbarsky 4c7f38333c Bug 1018583 part 2. Remove the returnStringOnly gunk from sandboxes. r=bholley 2014-07-04 01:22:50 -04:00
Carsten "Tomcat" Book 2271e217f3 Backed out changeset df2b43d4581e (bug 1018583) 2014-07-04 08:23:42 +02:00
Boris Zbarsky 3dc237819d Bug 1018583 part 2. Remove the returnStringOnly gunk from sandboxes. r=bholley 2014-07-04 01:22:50 -04:00
Bobby Holley 2d531b7c33 Bug 1032457 - Implement the |allowCallbacks| parameter to exportFunction. r=gabor 2014-07-03 11:00:54 -07:00
Bobby Holley e99f0db620 Bug 1032457 - Separate out cloning and non-cloning function forwarders. r=gabor
We're going to add functionality to the cloning version, and the non-cloning
version is going away.
2014-07-03 11:00:54 -07:00
Bobby Holley 62998b097a Bug 1032457 - Rename ExportOptions to ExportFunctionOptions. r=gabor 2014-07-03 11:00:53 -07:00
Ryan VanderMeulen 658554a580 Backed out changesets 4a19dcbc7e7a and 4907115e02e3 (bug 1029248) for non-unified bustage.
CLOSED TREE
2014-07-03 13:19:29 -04:00
Bill McCloskey ed70539e9e Bug 1029248 - Allow CPOWs to QI to non-scriptable interfaces (r=mrbkap) 2014-07-03 09:48:21 -07:00
Bill McCloskey 42d60ab372 Bug 1029248 - Add helpers to simplify CPOW unwrapping (r=mrbkap) 2014-07-03 09:48:21 -07:00
Bobby Holley b9e58ec853 Bug 1032317 - Get rid of JSD early return in RemoteXULForbidsXBLScope. r=gabor 2014-07-03 09:40:52 -07:00
Bobby Holley 71f1a77169 Bug 1032317 - Make CompartmentPrivate and XPCWrappedNativeScope accessors infallible. r=gabor 2014-07-03 09:40:52 -07:00
Bobby Holley 0eb34339eb Bug 1032317 - Remove XPCWrappedNativeScope::GetNewOrUsed. r=gabor 2014-07-03 09:40:52 -07:00
Bobby Holley 30506cb311 Bug 1032317 - Remove nsIXPConnect::InitClasses. r=gabor 2014-07-03 09:40:52 -07:00
Ms2ger 5fd953a2d2 Bug 1033697 - Remove the temporary variable 'v' from XPCConvert::NativeInterface2JSObject; r=bholley
There is no good reason to keep the additional local variable, especially
because it is only used inside this branch.
2014-07-03 14:58:06 +02:00
Ms2ger c748b49669 Bug 1033697 - Remove dead code from XPCConvert::NativeInterface2JSObject; r=bholley
Earlier in the function, there is an always-returning branch if |flat| is
non-null, so this code is only reached with a null |flat|, and the removed
code is dead.
2014-07-03 14:58:05 +02:00
Bobby Holley 7bfa2b8c8f Bug 1033920 - Handle null in XrayWrapper::setPrototypeOf. v1 r=efaust
From ac73068c4494c0df74329482e57f64ba8ec93cb4 Mon Sep 17 00:00:00 2001
2014-07-02 21:06:28 -07:00
Vincent St-Amour 315c7d2229 Bug 1028421 - Have xpcshell set compile-and-go. r=bz
From 7574b690a54b731b149f5df05dfaf7c229a98f4a Mon Sep 17 00:00:00 2001
This allows scripts to be compiled with Ion.
---
 js/xpconnect/src/XPCShellImpl.cpp |    9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
2014-06-17 17:06:19 -07:00
Bill McCloskey 758f71cb11 Bug 1031608 - Enable CompartmentPerAddon when e10s is enabled at startup (r=bholley) 2014-07-02 13:23:04 -07:00
Bobby Holley 9e1742f3c3 Bug 1033253 - Null-check the result of JS_GetFunctionId. r=bz 2014-07-02 11:02:11 -07:00
Steve Fink 04d4a79438 Bug 1022773 - Return value rooting for XPConnect, r=bholley
--HG--
extra : rebase_source : 7dd3b1585bbc3d6a4a22812771495dedf600d7e0
2014-06-25 15:35:37 -07:00
Steve Fink e0b7644d4e Bug 1022773 - Switch all JS Compile functions to use MutableHandle, r=terrence
--HG--
extra : rebase_source : e7542a31e4818e6beafd2b1dab096606370534bb
2014-06-25 15:35:35 -07:00
Steve Fink 7b06fcf9bd Bug 1022773 - Resolve hazard by switching Compile to MutableHandle, r=terrence,smaug,bholley
--HG--
extra : rebase_source : a6f4eb9138688c09bce15f36ffc0bdb5b6e3dc5f
2014-06-11 17:38:22 -07:00
Kyle Huey 4266528680 Bug 1031051: Part 18 - Kill the old XPIDL-based event generator. r=smaug 2014-06-30 16:02:04 -07:00
Kyle Huey 21d8fc32e7 Bug 1031051: Part 17 - Manually implement CustomEvent. r=smaug
CustomEvent can't be generated because we still need the XPCOM interface which is used by a11y among others.
2014-06-30 16:02:04 -07:00
Kyle Huey 0f7b974094 Bug 1031051: Part 16 - Migrate Style*ChangeEvent to the WebIDL code generator. r=smaug 2014-06-30 16:02:04 -07:00
Kyle Huey adffec442f Bug 1031051: Part 15 - Migrate Speech events to the WebIDL code generator. r=smaug 2014-06-30 16:02:03 -07:00
Kyle Huey bd2d1d2675 Bug 1031051: Part 14 - Migrate DOMTransactionEvent to the WebIDL code generator. r=smaug 2014-06-30 16:02:03 -07:00
Kyle Huey 24d6a0be33 Bug 1031051: Part 12 - Migrate DeviceStorageChangeEvent to the WebIDL code generator. r=smaug 2014-06-30 16:02:03 -07:00
Kyle Huey f9a248ddf8 Bug 1031051: Part 11 - Migrate DeviceOrientationEvent to the WebIDL code generator. r=smaug 2014-06-30 16:02:03 -07:00
Kyle Huey 3cb0de16a6 Bug 1031051: Part 10 - Migrate MozSettingsEvent and MozApplicationEvent to the WebIDL code generator. r=smaug 2014-06-30 16:02:02 -07:00
Kyle Huey abf5caa4a0 Bug 1031051: Part 9 - Migrate RecordErrorEvent to the WebIDL code generator. r=smaug 2014-06-30 16:02:02 -07:00
Kyle Huey 30920f0855 Bug 1031051: Part 8 - Migrate SmartCardEvent to the WebIDL code generator. r=smaug 2014-06-30 16:02:02 -07:00
Kyle Huey 273a6ca8da Bug 1031051: Part 7 - Migrate PageTransitionEvent to the WebIDL code generator. r=smaug 2014-06-30 16:02:02 -07:00
Kyle Huey 2d64bf6efa Bug 1031051: Part 6 - Migrate PopStateEvent to the WebIDL code generator. r=smaug 2014-06-30 16:02:02 -07:00
Kyle Huey a1d1526ae4 Bug 1031051: Part 5 - Migrate PopupBlockedEvent to the WebIDL code generator. r=smaug 2014-06-30 16:02:01 -07:00
Kyle Huey 1d1eb7826d Bug 1031051: Part 4 - Remove ReplaceElementEvent. r=khuey,wchen 2014-06-30 16:01:11 -07:00
Kyle Huey e1b3a9ea41 Bug 1031051: Part 3 - Migrate CloseEvent to the WebIDL code generator. r=smaug 2014-06-30 16:00:31 -07:00
Kyle Huey f4f09309a4 Bug 1031051: Part 2 - Migrate HashChangeEvent to the WebIDL code generator. r=smaug 2014-06-30 16:00:31 -07:00
Eric Faust 19ae308309 Bug 1027402 - Part 4: Mark Proxy Handler uses const. (r=jorendorff, r=bz) 2014-06-27 04:44:08 -07:00
Eric Faust 04ec29520a Bug 1027402 - Part 3: Mark all Proxy Handler methods const. (r=jorendorff, r=bz) 2014-06-27 04:44:06 -07:00
Eric Faust 992c8dde5a Bug 1027402 - Part 2: Mark Proxy Handler instances as const. (r=bholley, r=bz over IRC) 2014-06-27 04:44:04 -07:00
Eric Faust d6d3b525f2 Bug 1027402 - Part 1: Remove set* from BaseProxyHandler. (r=bholley) 2014-06-27 04:44:02 -07:00
Birunthan Mohanathas ac3455bfff Bug 1028557 - Part 1: Flatten xpcom/reflect/xptinfo/{public,src}/ directories. r=bsmedberg
--HG--
rename : xpcom/reflect/xptinfo/src/ShimInterfaceInfo.cpp => xpcom/reflect/xptinfo/ShimInterfaceInfo.cpp
rename : xpcom/reflect/xptinfo/src/ShimInterfaceInfo.h => xpcom/reflect/xptinfo/ShimInterfaceInfo.h
rename : xpcom/reflect/xptinfo/src/TODO => xpcom/reflect/xptinfo/TODO
rename : xpcom/reflect/xptinfo/public/XPTInterfaceInfoManager.h => xpcom/reflect/xptinfo/XPTInterfaceInfoManager.h
rename : xpcom/reflect/xptinfo/public/nsIInterfaceInfo.idl => xpcom/reflect/xptinfo/nsIInterfaceInfo.idl
rename : xpcom/reflect/xptinfo/public/nsIInterfaceInfoManager.idl => xpcom/reflect/xptinfo/nsIInterfaceInfoManager.idl
rename : xpcom/reflect/xptinfo/src/xptiInterfaceInfo.cpp => xpcom/reflect/xptinfo/xptiInterfaceInfo.cpp
rename : xpcom/reflect/xptinfo/src/xptiInterfaceInfoManager.cpp => xpcom/reflect/xptinfo/xptiInterfaceInfoManager.cpp
rename : xpcom/reflect/xptinfo/src/xptiTypelibGuts.cpp => xpcom/reflect/xptinfo/xptiTypelibGuts.cpp
rename : xpcom/reflect/xptinfo/src/xptiWorkingSet.cpp => xpcom/reflect/xptinfo/xptiWorkingSet.cpp
rename : xpcom/reflect/xptinfo/public/xptinfo.h => xpcom/reflect/xptinfo/xptinfo.h
rename : xpcom/reflect/xptinfo/src/xptiprivate.h => xpcom/reflect/xptinfo/xptiprivate.h
2014-06-30 08:39:45 -07:00
Peter Van der Beken efa5f7d65a Bug 1029104 - Convert XPathExpression to WebIDL bindings, add WebIDL API and switch to the WebIDL binding. r=bz.
--HG--
extra : rebase_source : 2b3459ddf41e258469c31e0e7c4d515ef7a7c83f
2014-06-27 21:39:50 +02:00
Peter Van der Beken b859e5a055 Backout patches for bug 1029104 for bustage on a CLOSED TREE.
--HG--
rename : dom/xslt/xpath/XPathExpression.cpp => dom/xslt/xpath/nsXPathExpression.cpp
rename : dom/xslt/xpath/XPathExpression.h => dom/xslt/xpath/nsXPathExpression.h
extra : rebase_source : 4cd96320fa102351284cca55b66d3a54592e5212
2014-06-27 23:07:44 +02:00
Peter Van der Beken ff0e975b03 Bug 1029104 - Convert XPathExpression to WebIDL bindings, add WebIDL API and switch to the WebIDL binding. r=bz.
--HG--
extra : rebase_source : f5c7a235a9a880f829ff39ccbb92508cbaad31a5
2014-06-27 21:39:50 +02:00
Jim Blandy e07aaa8185 Bug 800200: Remove references to JSD from outside js/jsd. r=mccr8,bholley,ted,smaug 2014-06-27 11:05:08 -07:00
Carsten "Tomcat" Book e4f5e9f3a3 Backed out changeset 2c6403818106 (bug 1027402) for bustage on a CLOSED TREE 2014-06-27 14:21:46 +02:00
Carsten "Tomcat" Book cbe01cdaa8 Backed out changeset 346912776f97 (bug 1027402) 2014-06-27 14:21:22 +02:00
Carsten "Tomcat" Book 76beb8d59f Backed out changeset 285c853fedfa (bug 1027402) 2014-06-27 14:21:20 +02:00
Carsten "Tomcat" Book 0c7ea5265d Backed out changeset 96443362db6f (bug 1027402) 2014-06-27 14:21:17 +02:00
Eric Faust 6f7e434c6b Bug 1027402 - Part 4: Mark Proxy Handler uses const. (r=jorendorff, r=bz) 2014-06-27 04:44:08 -07:00
Eric Faust 62d61ccf3f Bug 1027402 - Part 3: Mark all Proxy Handler methods const. (r=jorendorff, r=bz) 2014-06-27 04:44:06 -07:00
Eric Faust 6091687271 Bug 1027402 - Part 2: Mark Proxy Handler instances as const. (r=bholley) 2014-06-27 04:44:04 -07:00
Eric Faust 89bdda2ed7 Bug 1027402 - Part 1: Remove set* from BaseProxyHandler. (r=bholley) 2014-06-27 04:44:02 -07:00
Andrea Marchesini 6ec27357af Bug 876683 - DOMFile/DOMBlob refactoring, r=ehsan, r=bent 2014-06-26 09:47:44 -07:00
Andrew McCreight ddc6e4ad99 Bug 1029660 - Remove nsContentUtils::DeferredFinalize. r=peterv 2014-06-26 09:29:05 -07:00
Jim Blandy 7e20285e70 Bug 914753: Make Emacs file variable header lines correct, or at least consistent. DONTBUILD r=ehsan
The -*- file variable lines -*- establish per-file settings that Emacs will
pick up. This patch makes the following changes to those lines (and touches
nothing else):

 - Never set the buffer's mode.

   Years ago, Emacs did not have a good JavaScript mode, so it made sense
   to use Java or C++ mode in .js files. However, Emacs has had js-mode for
   years now; it's perfectly serviceable, and is available and enabled by
   default in all major Emacs packagings.

   Selecting a mode in the -*- file variable line -*- is almost always the
   wrong thing to do anyway. It overrides Emacs's default choice, which is
   (now) reasonable; and even worse, it overrides settings the user might
   have made in their '.emacs' file for that file extension. It's only
   useful when there's something specific about that particular file that
   makes a particular mode appropriate.

 - Correctly propagate settings that establish the correct indentation
   level for this file: c-basic-offset and js2-basic-offset should be
   js-indent-level. Whatever value they're given should be preserved;
   different parts of our tree use different indentation styles.

 - We don't use tabs in Mozilla JS code. Always set indent-tabs-mode: nil.
   Remove tab-width: settings, at least in files that don't contain tab
   characters.

 - Remove js2-mode settings that belong in the user's .emacs file, like
   js2-skip-preprocessor-directives.
2014-06-24 22:12:07 -07:00
Bill McCloskey 64b94c4b6d Bug 1017310 - Associate JS compartments with add-on chrome XBL (r=bholley) 2014-06-23 16:33:37 -07:00
Bobby Holley e8cb8d7c75 Bug 1027131 - Additional tests for wrapReflectors. r=gabor 2014-06-23 13:25:09 -07:00
Bobby Holley 81bc7fd4b5 Bug 1027131 - Use StackScopedClone for cloneInto. r=gabor 2014-06-23 13:25:08 -07:00
Bobby Holley 4cea2d6728 Bug 1027131 - Add support for function cloning in StackScopedClone. r=gabor 2014-06-23 13:25:08 -07:00
Bobby Holley 5fe6fbfe2e Bug 1027131 - Innerize before reflector detection. r=gabor 2014-06-23 13:25:08 -07:00
Bobby Holley ce1f9d04f5 Bug 1027131 - Add support for Blob and FileList in the wrapReflectors = false case. r=gabor 2014-06-23 13:25:08 -07:00
Bobby Holley 821f7d7e55 Bug 1027131 - Switch to a struct for the StackScopedClone closure. r=gabor 2014-06-23 13:25:08 -07:00
Bobby Holley 8292afbff7 Bug 1027131 - Rename CloneNonReflectors into StackScopedClone, and give it an options struct. r=gabor 2014-06-23 13:25:07 -07:00
Bobby Holley 5cb601631e Bug 1027131 - Remove invalid assertion. r=gabor
If a clone happens between two same-origin scopes, we'll end up with CCWs here
that are neither Xrays nor reflectors.
2014-06-23 13:25:07 -07:00
Bobby Holley ec0021861b Bug 1027131 - Split out ExportHelpers.cpp. r=gabor
A lot of this stuff is usable from both Sandbox.cpp and XPCComponents.cpp, and
those files are both pretty big these days.
2014-06-23 13:25:07 -07:00
Jason Orendorff 76d9f6e407 Bug 645416, part 22 - Remove JSCompartment::wrapId. r=terrence.
This is unnecessary now that object jsids no longer exist. Both string and
symbol jsids point only to GC things in the atoms compartment, which are safe
to pass to any compartment without wrapping.

--HG--
extra : rebase_source : 82c21e8474df05b1bb42c14d872c981205bbe879
2014-06-23 10:57:02 -05:00
Jason Orendorff 26bdfdcc2f Bug 645416, part 3 - Symbol layout and GC support for allocating them. r=terrence.
Layout: js/src/vm/Symbol.h defines the new class JS::Symbol. JS::Symbol is the
same size as JSString on all platforms, because the allocator does not support
smaller allocations.

Allocation: Since the purpose of symbols is to serve as property keys, they are
always allocated in the atoms compartment.

We take a lock when allocating. This could probably be replaced with a
main-thread-only assertion. However, if atom allocation is not already a
bottleneck, symbol allocation probably never will be.

Symbols are given their own finalize-class in the GC. This means we allocate a
page per zone for symbols, even though they are only ever allocated in the
atoms zone. Terrence thought this could be easily fixed later. It should be; we
never touch the page, but a 32-bit virtual address space does not just have
infinite pages to spare.

A jsapi-test exercises the new symbol allocation code. A few oddities in
jsapi-tests are fixed in passing.

Discussion after review led to some new assertions about minimum object size in
AllocateObject and AllocateNonObject.

--HG--
extra : rebase_source : 45abb651d3b1b493d77a5dd0eb554f96b058c63a
2014-06-23 10:55:51 -05:00
Benoit Jacob 27fb6960a5 Bug 1028588 - Fix dangerous public destructors in js/xpconnect - r=bholley 2014-06-23 14:49:08 -04:00
Peter Van der Beken bd776f4d97 Bug 1027095 - Convert XPathResult to WebIDL bindings - add WebIDL API and switch. r=bz. 2013-07-04 17:40:06 +02:00
Bill McCloskey a461ef47a5 Bug 990729 - Add compartmentPerAddon option for XUL overlays (r=bholley) 2014-06-21 11:55:15 -07:00
Bill McCloskey 904ef0cbaf Bug 990729 - No longer store addonId in sandbox metadata (r=bholley) 2014-06-21 11:54:37 -07:00
Bill McCloskey bbe086e62f Bug 990729 - Tests for writeToGlobalPrototype (r=bholley) 2014-06-21 11:54:36 -07:00
Bill McCloskey 8946fc6e36 Bug 990729 - Add writeToGlobalPrototype option for sandboxes (r=bholley) 2014-06-21 11:54:36 -07:00
Brian Hackett 3ba0ec8938 Bug 1020012 - Consolidate ScriptSources with the same source, r=luke. 2014-06-21 10:39:04 -07:00
Neil Rashbrook 5a0090cb4e Bug 1026254 Broken chrome: URLs should result in error pages r=bsmedberg 2014-06-21 00:50:58 +01:00
Ms2ger bad4ca4d29 Bug 1022855 - Rename nsCSSStyleSheet to mozilla::CSSStyleSheet; r=heycam
--HG--
rename : layout/style/nsCSSStyleSheet.cpp => layout/style/CSSStyleSheet.cpp
rename : layout/style/nsCSSStyleSheet.h => layout/style/CSSStyleSheet.h
2014-06-20 12:32:49 +02:00
Ms2ger 451c7edf83 Backout revision 308e51eae10c for build bustage.
--HG--
rename : layout/style/CSSStyleSheet.cpp => layout/style/nsCSSStyleSheet.cpp
rename : layout/style/CSSStyleSheet.h => layout/style/nsCSSStyleSheet.h
2014-06-20 13:00:08 +02:00
Ms2ger 9fb7f507f0 Bug 1022855 - Rename nsCSSStyleSheet to mozilla::CSSStyleSheet; r=heycam
--HG--
rename : layout/style/nsCSSStyleSheet.cpp => layout/style/CSSStyleSheet.cpp
rename : layout/style/nsCSSStyleSheet.h => layout/style/CSSStyleSheet.h
2014-06-20 12:32:49 +02:00
Wes Kocher c640e2a966 Backed out 2 changesets (bug 1026008, bug 1025264) for debug crashtest leaks on a CLOSED TREE
Backed out changeset d7ab14487c62 (bug 1026008)
Backed out changeset 0b04aefdd3e3 (bug 1025264)
2014-06-19 17:13:12 -07:00
Neil Rashbrook c03ca2c745 Bug 1025264 Broken chrome: URLs should result in error pages r=bsmedberg 2014-06-19 23:56:02 +01:00
Bobby Holley 5c7db1fca5 Bug 976148 - Tests. r=gabor 2014-06-19 09:57:06 -07:00
Bobby Holley a5aa04cdbc Bug 976148 - Support the .name and .length properties of Function instances. r=gabor 2014-06-19 09:57:06 -07:00
Bobby Holley 5549a2a2cc Bug 976148 - Support the 'prototype' property for standard constructors. r=gabor 2014-06-19 09:57:06 -07:00
Bobby Holley 02c638ea36 Bug 976148 - Implement Xrays to Function objects. r=gabor 2014-06-19 09:57:06 -07:00
Bobby Holley b38a3a001d Bug 1026860 - Remove mThisObjects and use the function parent instead. r=luke,khuey 2014-06-18 22:36:42 -07:00
Birunthan Mohanathas bc0233fe47 Bug 1026535 - Fix mismatched class/struct tags. r=ehsan 2014-06-18 17:57:51 -07:00
Birunthan Mohanathas 51ba75d135 Bug 1016240 - Exterminate CR+LF line endings. r=briansmith,cpearce,ehsan,gavin 2014-06-18 17:56:02 -07:00
Nicholas Nethercote aaf6fb2124 Bug 1010064 - Allow memory reports to be anonymized. r=bsmedberg.
--HG--
extra : rebase_source : 5eb756b17a97e751deb0f47e909fdb35533cb23b
2014-05-20 23:06:54 -07:00
Eric Faust f9d65507e2 Bug 1011660 - Remove separate DOMClass struct. (r=bz) 2014-06-18 13:19:19 -07:00
Ryan VanderMeulen 2c783e8f61 Backed out changeset aca2ec2457ec (bug 1016738) for re-introducing frequent WebRTC crashes. 2014-06-17 21:12:43 -04:00
Boris Zbarsky 3a5702d71d Bug 1019194 part 1. Get rid of nsIIndexedDatabaseManager. r=paul,khuey,mossop 2014-06-17 15:01:47 -04:00
Bill McCloskey 8e850f27e9 Bug 1016738 - Simplify/fix "dead compartment" logic (r=luke,jonco) 2014-06-17 11:20:33 -07:00
Bobby Holley 3963ab573b Bug 987163 - Implement Xrays for TypedArrays. r=gabor 2014-06-17 10:16:08 -07:00
Bobby Holley a5a0be7595 Bug 987163 - Drop special COW support for TypedArrays. r=gabor
From now on, if someone wants to expose a TypedArray to content, they should
use Cu.cloneInto.
2014-06-17 10:16:08 -07:00
Bobby Holley 78b6ce807b Bug 987163 - Fix some squelched OOMs. r=gabor 2014-06-17 10:16:08 -07:00
Bobby Holley e25ce66bda Bug 987163 - Convert from |switch| statements to |if| statements. r=gabor
I realized that the switches are going to be cumbersome for Array stuff, because
we'll have to enumerate each kind of TypedArray as a separate case: statement.
Let's just use |if| so that we can call a helper.
2014-06-17 10:16:08 -07:00
Ben Kelly 85647df24b Bug 1025973 - Part 2: Do not pass JSContext to static webidl methods in non-worker case. r=bz 2014-06-16 12:52:00 -04:00
Brian Hackett 5385dceeca Bug 1024038 - Remove YARR, r=jandem. 2014-06-16 15:37:53 -07:00
Terrence Cole 5590758a75 Bug 1017650 - Remove the unused |proto| arg from the wrapping machinery; r=efaust 2014-06-16 11:59:59 -07:00
Sushant Dinesh d563f01228 Bug 1020364. Change parallel_compilation to offthread_compilation to prevent confusion. r=h4writer. 2014-06-16 12:05:12 +02:00
Daniel Stenberg 43f0c8ec63 Bug 237623 - detect broken HTTP1.1 transfers. r=mcmanus,seth
Return error when the protocol layer detects a framing error. More data
was supposed to be delivered than what actually did arrive.

Error code returned for this: NS_ERROR_NET_PARTIAL_TRANSFER

In HTTP1.1 for Content-Length: and chunked-encoding underruns

In http2 and SPDY for framing errors when data has already been received.

imgRequest::OnStopRequest will keep partially loaded images shown but
remove them from cache.
2014-06-09 00:15:00 +02:00
Andrew McCreight 50648bc638 Bug 1019101 - Add a way to get the max CC pause during a given period of time. r=smaug 2014-06-14 16:43:45 -07:00
Nicholas Nethercote 2207ecfbcd Backout 277bacd9f2f8 (bug 1023719) for causing intermittent crashes.
--HG--
extra : rebase_source : e6c9e54dd2df572da7f8cdf3cd6226a1aeeee883
2014-06-13 06:39:16 -07:00
David Major e96dd3a631 Bug 1024265 - Adjust the trusted script buffer size for win64. r=bholley
--HG--
extra : rebase_source : f7e16ccaae5892f3b25ed1b0da6e0f3159dadd25
2014-06-13 10:37:05 +12:00
David Major e851d0309c Bug 1024265 - Part 0: Fix comments. r=bholley DONTBUILD
--HG--
extra : rebase_source : 8bc1cf12182f241f0a1cfdaf27d54c9c56e69bda
2014-06-13 10:30:33 +12:00
Bobby Holley 07bee3c907 Bug 1020609 - Implement Xrays to Arrays. r=bz 2014-06-11 15:16:07 -07:00
Bobby Holley 0f251a891e Bug 1020609 - Make configurability check in Xray defineProperty match the spec. r=bz
This code is basically emulating the ES semantics with respect to non-configurable
properties. Non-configurable value properties can still be writable, in which case
their value and writability may be updated.
2014-06-11 15:16:06 -07:00
Boris Zbarsky bc1e511e33 Bug 1009675 part 2. Return WebIDL 'any' values as handles. r=peterv 2014-06-11 16:26:52 -04:00
Ed Morley 91ca7607e9 Merge latest green b2g-inbound changeset and mozilla-central; a=merge 2014-06-11 17:14:10 +01:00
Wes Kocher 37bbc01ac7 Merge m-c to b2g-inbound 2014-06-10 18:57:00 -07:00
Vicamo Yang 8d5be851b4 Bug 1023148 - Use WebIDL codegen to implement RIL & WiFi events. r=smaug 2014-06-11 09:23:34 +08:00
Jason Orendorff 94981132ff Bug 1023109 - Update nsIXPCScriptable.idl UUID. (Interface changed in rev a470806c3553.) r=Waldo.
"[...] nothing can go wrong with this" --Jeff Walden.

--HG--
extra : rebase_source : 95640f61aae830080c96ff6db849b9da36ad4bcf
2014-06-10 12:20:11 -05:00
Gijs Kruitbosch a8d21bcbd4 Bug 1022002 - make cloneInto create functions that clone their arguments, r=bholley 2014-06-09 19:09:51 +01:00
Ed Morley f9eb828517 Backed out changeset 6d172e86ce2e (bug 1022002) for tipping Android 2.3 reftest-6 runtimes over the max time limit 2014-06-10 15:08:49 +01:00
Gijs Kruitbosch 96799d26ab Bug 1022002 - make cloneInto create functions that clone their arguments, r=bholley 2014-06-09 19:09:51 +01:00
Eric Faust 755a9e6057 Backout changesets 654a3fc28fa2 and 88fefd05fb64 (bug 1017862) for Cpp and mochitest failures on a CLOSED TREE. r=bustage 2014-06-09 15:48:55 -07:00
Eric Faust 96f3022119 Bug 1017862 - Remove virtual destructor from BaseProxyHandler. (r=jorendorff) 2014-06-09 14:12:17 -07:00
Bill McCloskey 94dcca9b50 Bug 1016738 - Back out for webrtc crashes. 2014-06-09 12:30:38 -07:00
Nicholas Nethercote feeaf7db9a Bug 1023719 - Report notable classes in the JS memory reporter. r=till.
--HG--
extra : rebase_source : 5a842c36cf7202f6751290da80cefb005fd8db95
2014-04-15 19:43:18 -07:00
Chris Peterson c04dc8b035 Bug 1018680 - Fix jsd_xpc.cpp warning and mark js/ductwork, js/jsd, and js/xpconnet as FAIL_ON_WARNINGS. r=ejpbruel 2014-05-31 19:50:24 -07:00
Bobby Holley 699946fc90 Bug 1022016 - Redesign nsDependentJSString API to be less of a footgun. r=gabor 2014-06-10 20:15:56 -07:00
Boris Zbarsky e37365280d Bug 1020715. Remove the quickstubs for quota API. r=peterv 2014-06-10 22:38:06 -04:00
Jim Chen 809db03f75 Bug 1013326 - Move script principals APIs to jsfriendapi; r=luke 2014-06-06 18:39:40 -04:00
Bobby Holley 5aecb1c33a Bug 1021312 - Followup to fix incorrect test. r=me on a CLOSED TREE 2014-06-06 13:49:38 -07:00
Wes Kocher 2f2f97f987 Backed out 2 changesets (bug 1021312, bug 1020460) for apparently causing jsreftest orange on a CLOSED TREE
Backed out changeset eca7bdeb0c6e (bug 1020460)
Backed out changeset 965578443062 (bug 1021312)
2014-06-06 15:00:10 -07:00
Bobby Holley 5be28d2508 Bug 1021312 - Followup to fix incorrect test. r=me 2014-06-06 13:49:38 -07:00
Trevor Saunders dd19f59774 bug 1021171 - don't return nulllptr in functions returning bool r=bz,waldo 2014-06-06 15:31:30 -04:00
Jason Orendorff 3362b05761 Bug 1017067 - Merge deleteProperty/deleteElement ops back into a single deleteGeneric op. r=bhackett. 2014-06-05 13:19:23 -04:00
Bobby Holley 32a5b36c8a Bug 1021258 - Restore the __proto__ mutation warning for __proto__ sets. r=luke 2014-06-06 12:21:36 +01:00
Bobby Holley 22f18674b7 Bug 987111 - Tests. r=gabor 2014-06-05 22:32:39 -07:00
Bobby Holley 9db935d49b Bug 987111 - Flip on Object Xrays. r=gabor 2014-06-05 22:32:39 -07:00
Bobby Holley 42f7024f5e Bug 987111 - Implement delete_ for Object Xrays. r=gabor 2014-06-05 22:32:39 -07:00
Bobby Holley cad5e8f936 Bug 987111 - Implement defineProperty for Object Xrays. r=gabor 2014-06-05 22:32:39 -07:00
Bobby Holley 88e63325ae Bug 987111 - Implement resolveOwnProperty and enumerateNames for Object instances. r=gabor 2014-06-05 22:32:38 -07:00
Bobby Holley a2ee510ecb Bug 987111 - Make JSProto_Object COWs take precedence over Xrays. r=gabor 2014-06-05 22:32:38 -07:00
Bobby Holley bbc449149e Bug 987111 - Handle the Object.prototype case in Xray getPrototypeOf. r=gabor 2014-06-05 22:32:38 -07:00
Bobby Holley 6bb5e95a97 Bug 987111 - Fill out existing_desc with all properties, not just |own| ones. r=gabor
This gives us strictly more information than we had before, which turns out to
be useful. We can still get the old behavior by testing the identity of
desc.object(), which I've done in one of the two existing uses for existing_desc.
The other (in DOMXrayTraits::defineProperty) is actually more correct with the
full (non-own) lookup.
2014-06-05 22:32:38 -07:00
Bobby Holley 1951af9fcf Bug 987111 - Add test coverage to make sure we don't add new Xrayable functionality without auditing it. r=gabor 2014-06-05 22:32:37 -07:00
Bobby Holley 6cdd30ff08 Bug 1021312 - Tests. r=mccr8 2014-06-05 22:32:36 -07:00
Bobby Holley 1a478c5c5d Bug 1021312 - use a fresh zone for xpcshell. r=mccr8 2014-06-05 22:32:36 -07:00
Bobby Holley 5122cdb7ff Bug 1021312 - Wrap strings in CloneNonReflectors. r=mccr8 2014-06-05 22:32:36 -07:00
Wes Kocher ac2eeb8a93 Backed out changeset 8b809afd1cea (bug 1021258) for Android m8 bustage on a CLOSED TREE 2014-06-05 18:23:22 -07:00
Bobby Holley adc4df5c66 Bug 1021258 - Restore the __proto__ mutation warning for __proto__ sets. r=luke 2014-06-05 16:24:07 -07:00
Bobby Holley 8ff8fc55e2 Bug 1021124 - Bail out of InterruptCallback if we're too early in startup. r=bz 2014-06-05 12:29:42 -07:00
Vivien Nicolas bc803a18da Bug 1015887 - Expose realFrameElement to Chrome JS. r=bholley 2014-06-04 20:11:05 +02:00
Wes Kocher 915f3c652a Backed out 13 changesets (bug 987111) for disagreeing with some patch from b-i or fx-team in tonight's merge to hopefully fix a CLOSED TREE
Backed out changeset d4e390ceac27 (bug 987111)
Backed out changeset 5f88b5ef9496 (bug 987111)
Backed out changeset cdfd24ddf448 (bug 987111)
Backed out changeset 7883150e5471 (bug 987111)
Backed out changeset 407c7ca82ada (bug 987111)
Backed out changeset e7140ccf7e09 (bug 987111)
Backed out changeset 0a4d18d6306f (bug 987111)
Backed out changeset e7b7548867d9 (bug 987111)
Backed out changeset 944d128f135a (bug 987111)
Backed out changeset 33860f30fc4f (bug 987111)
Backed out changeset 518a915fb81b (bug 987111)
Backed out changeset 7576a51cf72e (bug 987111)
Backed out changeset 1a8dc1af9de6 (bug 987111)
2014-06-04 22:12:50 -07:00
Bobby Holley 59b2495ac6 Bug 987111 - Tests. r=gabor 2014-06-04 15:12:27 -07:00
Bobby Holley c6742de97a Bug 987111 - Flip on Object Xrays. r=gabor 2014-06-04 15:12:27 -07:00
Bobby Holley a9aed971d9 Bug 987111 - Implement delete_ for Object Xrays. r=gabor 2014-06-04 15:12:27 -07:00
Bobby Holley 98b02626d5 Bug 987111 - Implement defineProperty for Object Xrays. r=gabor 2014-06-04 15:12:27 -07:00
Bobby Holley 6e9bc694e8 Bug 987111 - Implement resolveOwnProperty and enumerateNames for Object instances. r=gabor 2014-06-04 15:12:27 -07:00
Bobby Holley 5fce5dd4ab Bug 987111 - Make JSProto_Object COWs take precedence over Xrays. r=gabor 2014-06-04 15:12:26 -07:00
Bobby Holley 6c6c52d3ec Bug 987111 - Handle the Object.prototype case in Xray getPrototypeOf. r=gabor 2014-06-04 15:12:26 -07:00
Bobby Holley ce6b82c251 Bug 987111 - Fill out existing_desc with all properties, not just |own| ones. r=gabor
This gives us strictly more information than we had before, which turns out to
be useful. We can still get the old behavior by testing the identity of
desc.object(), which I've done in one of the two existing uses for existing_desc.
The other (in DOMXrayTraits::defineProperty) is actually more correct with the
full (non-own) lookup.
2014-06-04 15:12:26 -07:00
Bobby Holley 16aa8bb904 Bug 987111 - Add test coverage to make sure we don't add new Xrayable functionality without auditing it. r=gabor 2014-06-04 15:12:26 -07:00
Ryan VanderMeulen 3d3ce28f0f Backed out 5 changesets (bug 1015871, bug 1020257, bug 1015887, bug 1005888, bug 1015894) for desktop B2G mochitest failures on a CLOSED TREE.
Backed out changeset dbcb9974b640 (bug 1020257)
Backed out changeset 3220b7b2efc9 (bug 1015894)
Backed out changeset 4e23647ae247 (bug 1015887)
Backed out changeset 59df0cdacc15 (bug 1015871)
Backed out changeset e7124b07804b (bug 1005888)
2014-06-04 16:07:06 -04:00
Vivien Nicolas 34a46b6121 Bug 1015887 - Expose realFrameElement to Chrome JS. r=bholley 2014-06-04 20:11:05 +02:00
Kyle Huey 7ffb8ff042 Bug 1019248: Convert ProgressEvent to WebIDL codegen. r=smaug 2014-06-03 15:52:36 -07:00
Kyle Huey 4118dbe6e7 Back out bug 1019248 due to test failures. 2014-06-02 20:18:17 -07:00
Kyle Huey 38ae93d63c Bug 1019248: Convert ProgressEvent to WebIDL codegen. r=smaug 2014-06-02 19:02:37 -07:00
Bill McCloskey 9157c8fd4d Bug 1017310 - Rename *XBLScope to *ContentXBLScope in xpconnect (r=bholley) 2014-06-02 18:04:21 -07:00
Ryan VanderMeulen 31441571eb Merge m-c to inbound. 2014-06-02 17:21:11 -04:00
Ryan VanderMeulen 2190bd2057 Merge mozilla-inbound to m-c. 2014-06-02 17:20:08 -04:00
Bobby Holley 13813ca2bf Bug 972987 - Implement Xrays to self-hosted methods and properties. r=till,gabor 2014-06-02 13:55:20 -07:00
Steve Fink 5a86ec4061 Bug 1017419 - Handlify nsTArrayToJSArray, r=terrence
--HG--
extra : rebase_source : 802407d2c25fe060e16b546890859720664158ae
2014-06-02 09:40:13 -07:00
Bill McCloskey c6897ddf69 Bug 1016738 - Simplify/fix "dead compartment" logic (r=luke,jonco) 2014-05-30 07:46:12 -07:00
Brian R. Bondy df5e435180 Bug 1017945 - Make the XPConnect shell Vista aware to avoid registry virtualization. r=rstrong 2014-05-29 22:54:25 -04:00
Terrence Cole e82db4c03a Bug 1013531 - Clarify the naming of the rooting analysis supression guards; r=sfink
--HG--
extra : rebase_source : 95229e907222dd7335f92ae13dd83f1065eabf58
2014-05-28 17:34:36 -07:00
Ryan VanderMeulen 1206378822 Backed out 2 changesets (bug 1016738, bug 1017150) for spikes in GC-related crashes.
Backed out changeset 93c5b9181c84 (bug 1016738)
Backed out changeset c3ce56241969 (bug 1017150)
2014-05-30 15:23:02 -04:00
Bill McCloskey 2bfdd537fd Bug 1016738 - Simplify/fix "dead compartment" logic (r=luke,jonco) 2014-05-30 07:46:12 -07:00