Commit Graph

352 Commits

Author SHA1 Message Date
Bill McCloskey
2dfcf804fc Bug 1102640 - [e10s] Shouldn't be able to create CPOWs to the inner window (r=mrbkap) 2014-12-18 17:34:24 -08:00
Bill McCloskey
52d9ccaf3d Bug 1102637 - [e10s] Control CPOW logging with env var (r=mrbkap) 2014-12-18 17:34:24 -08:00
Bill McCloskey
21e71d7986 Bug 1102637 - [e10s] Log the address of objects sent using CPOWs (r=mrbkap) 2014-12-18 17:34:24 -08:00
Tom Schuster
f64a27048c Bug 1094176 - Remove lookup API from browser. r=bholley 2014-12-17 00:28:39 +01:00
Tom Schuster
a135bf8d75 Bug 783829 - Remove getEnumerablePropertyKeys. r=efaust,bholley 2014-12-17 00:28:38 +01:00
Tom Schuster
71db988913 Bug 783829 - Change from Proxy iterate to enumerate. r=efaust,bholley 2014-12-17 00:28:38 +01:00
Jason Orendorff
3adebb6c77 Bug 1103368, part 5 - Make Class::getProperty and setProperty nullable instead of needing stub functions. Never store stub functions in JSPropertyDescriptors. r=bhackett.
--HG--
extra : rebase_source : a44070dd6155426ef6026c1575116f90b5fdac0c
extra : amend_source : 8d8fcf05dfd5fdf214a39501663347a6d6b56463
2014-11-22 12:23:39 -06:00
Jason Orendorff
734d01443d Bug 1103368, part 4 - Ban stub getter/setter arguments to js::CheckDefineProperty. r=bhackett.
--HG--
extra : rebase_source : 407e9adaca3ee23e768f750cd84a0a8f3432e2fa
2014-11-22 08:43:56 -06:00
Brad Lassey
1f3bac026c bug 1104160 - crash in CPOWTimer::~CPOWTimer() r=billm 2014-11-25 13:04:07 -05:00
Bobby Holley
26fc283b27 Bug 1102521 - Use AutoEntryScript/AutoJSAPI for CPOW answers. r=billm 2014-11-23 15:23:21 -08:00
Brad Lassey
9be6642203 bug 1074567 - measure time spent processing in sync CPOW calls per compartment r=bholley,billm
* * *
try: -b do -p linux64-b2g-haz -u none
2014-11-19 18:54:34 -05:00
Tom Schuster
5775dbcbf7 Bug 783829 - Rename Proxy enumerate trap to getEnumerablePropertyKeys. r=efaust 2014-11-14 16:21:12 +01:00
Bill McCloskey
3f3dd80fb9 Bug 1091964 - Avoid spurious rooting hazard on a CLOSED TREE 2014-11-05 17:52:38 -08:00
Bill McCloskey
a4186ac75a Bug 1091970 - [e10s] Cache object tag in add-on shims for remote objects (r=mrbkap) 2014-11-04 17:40:08 -08:00
Bill McCloskey
169b2f071b Bug 1091964 - [e10s] Cache isCallable and isConstructor for CPOWs (r=mrbkap) 2014-11-04 17:39:34 -08:00
Carsten "Tomcat" Book
efe4af0c06 Backed out changeset 5992aea01aff (bug 1091964) 2014-11-05 10:03:06 +01:00
Carsten "Tomcat" Book
dbe7dbf0fe Backed out changeset 38ca6211d1d4 (bug 1091970) 2014-11-05 10:02:59 +01:00
Bill McCloskey
d673d4c30d Bug 1091970 - [e10s] Cache object tag in add-on shims for remote objects (r=mrbkap) 2014-11-04 17:40:08 -08:00
Bill McCloskey
7260811c53 Bug 1091964 - [e10s] Cache isCallable and isConstructor for CPOWs (r=mrbkap) 2014-11-04 17:39:34 -08:00
Bill McCloskey
08104d1b77 Bug 1073631 - Add mising waivier outerizing for CPOWs (r=bholley) 2014-11-03 07:10:27 -08:00
Boris Zbarsky
e783498ddd Bug 1088002 part 2. Change JS_DefineElement, JS_DefineProperty, JS_DefineUCProperty, JS_DefinePropertyById, and JS_DefineProperties to default to using JSNative accessors, not JSPropertyOp accessors. r=waldo 2014-10-29 15:06:31 -04:00
Jeff Walden
065609283e Bug 1052139 - Reorder the preventExtensions trap just after the [[Prototype]]-access traps. r=code-motion
--HG--
extra : rebase_source : ea85bf1daa26ec7a32caf2656ebf99c6e2757cfa
2014-10-21 11:40:04 -07:00
Jeff Walden
63e44a7975 Bug 1085566 - Make the preventExtensions hook return succeeded/failed rather than always indicate failure by reporting an error. r=efaust
--HG--
extra : rebase_source : 487b569d23ce18f39fc53697e5f25cc789885803
2014-10-19 01:18:43 -07:00
Carsten "Tomcat" Book
983ab2d153 Backed out changeset 9e900e87b4bb (bug 1085566) 2014-10-22 08:59:09 +02:00
Carsten "Tomcat" Book
ecd1a7bd6c Backed out changeset 4eee647a5bd4 (bug 1052139) 2014-10-22 08:59:05 +02:00
Jeff Walden
07d1baf5b1 Bug 1052139 - Reorder the preventExtensions trap just after the [[Prototype]]-access traps. r=code-motion
--HG--
extra : rebase_source : 18f69552bad6922c1b602cbf81d6961883e4d5b8
2014-10-21 11:40:04 -07:00
Jeff Walden
7f782a5fda Bug 1085566 - Make the preventExtensions hook return succeeded/failed rather than always indicate failure by reporting an error. r=efaust
--HG--
extra : rebase_source : 3b61c22efe8b5b2b3135b11556b6b329479d3dcd
2014-10-19 01:18:43 -07:00
Bill McCloskey
18d48e400c Bug 1077587 - Handle non-existent properties in CPOW descriptor code (r=mrbkap) 2014-10-20 09:47:27 -07:00
Jason Orendorff
2c80b8acba Bug 1081280 - Rename BaseProxyHandler::keys -> getOwnEnumerablePropertyKeys. r=efaust.
--HG--
extra : rebase_source : 009323b607d53066b77191f9254918b61ea4d594
2014-10-08 22:01:55 -05:00
Jason Orendorff
2999d4406e Bug 1081255 - Rewrite comments in jsproxy.h; reclassify the methods a bit. No change in behavior. r=efaust, r=bz, r=jwalden.
--HG--
extra : rebase_source : b3440548322d65b2bd01862fb863e6197eb263c6
2014-10-08 12:09:08 -05:00
Tom Schuster
b0d84b1425 Bug 1071177 - Support symbol keys and throw exception on unique symbols with CPOWs. r=billm 2014-10-16 18:39:38 +02:00
Tom Schuster
0db58380c0 Bug 1069694 - Remove OldDebugAPI from the browser. r=shu 2014-10-12 19:37:41 +02:00
Jason Orendorff
150ebfa3c4 Bug 1026918, part 3 - Rename mozilla::jsipc::PJavaScript::GetPropertyNames -> GetPropertyKeys. r=billm.
--HG--
extra : rebase_source : 53d0aae8df524ffc9dfc9657908adf00fc9c89a8
extra : amend_source : 13d71e9a8b830e5ecc74586f6e4b616703cfd305
2014-09-26 19:52:45 -05:00
Jason Orendorff
907735d0c8 Bug 1026918, part 2 - Rename js::GetPropertyNames -> GetPropertyKeys. r=efaust.
--HG--
extra : rebase_source : 359dceadb4dfcfc9c724d2995c121a56af610c7d
2014-09-26 19:39:35 -05:00
Jason Orendorff
b2769f4dd7 Bug 1026918, part 1 - Rename BaseProxyHandler::getOwnPropertyNames -> ownPropertyKeys to match the ES6 [[OwnPropertyKeys]] internal method. r=efaust, r=bz.
Also renamed in this patch:

ENUMERATE_IF_DEFINED -> ADD_KEYS_IF_DEFINED
XrayEnumerateAttributesOrMethods -> XrayAttributeOrMethodKeys
XrayEnumerateNativeProperties -> XrayOwnNativePropertyKeys
XrayEnumerateProperties -> XrayOwnPropertyKeys
WrapperOwner::getPropertyNames -> getPropertyKeys

These make sense because JSITER_* flags are involved; the functions in
question are not for finding enumerable properties only.

--HG--
extra : rebase_source : 35fb0fa3c8f3d7bc952409ea8c584e58f3c1d78f
2014-09-26 15:16:36 -05:00
Bill McCloskey
b030bd8399 Bug 1049879 - Remove urgent and rpc message types and replace with message priorities (r=dvander,bent,ehsan) 2014-10-07 21:32:45 -07:00
Carsten "Tomcat" Book
f107ebbec3 Backed out changeset e56bf4ea89fb (bug 1049879) for bustage in emulator debug builds on a CLOSED TREE 2014-10-08 08:03:57 +02:00
Bill McCloskey
f70f11163a Bug 1049879 - Remove urgent and rpc message types and replace with message priorities (r=dvander,bent,ehsan) 2014-10-07 21:32:45 -07:00
Tom Schuster
5601d3a0c1 Bug 1071177 - Add support for symbols as a value type. r=billm 2014-10-07 11:29:03 +02:00
Tom Schuster
0b52a6e50a Bug 1071177 - Add support for well-known and registered symbols as CPOW jsids. r=billm,jorendorff 2014-10-07 11:29:03 +02:00
Tom Schuster
0d0cd99d30 Bug 1071177 - Introduce JSIDVariant type for CPOWs. r=billm 2014-10-07 11:29:02 +02:00
Andrew McCreight
44945093fb Bug 1073597, part 3 - Lazify creation of the CPOW manager in CpowIdHolder. r=billm 2014-10-06 15:45:42 -07:00
Nicolas B. Pierron
8b681bc06c Bug 1074911 - Replace JS_ASSERT by MOZ_ASSERT. r=jorendorff
Apply the following script

sed -i '
   /JS_ASSERT(/ {
     s/JS_ASSERT(/MOZ_ASSERT(/;
     :b;
     s/ \\$/\\/;
     /;/ { p; d; };
     n;
     s/^/ /;
     b b;
  };
  s/JS_ASSERT (/MOZ_ASSERT(/;
'

Except where the JS_ASSERT macro does not end with a semi-colon, where empty
lines are in the middle of the macro, and where the backslahes are always the
same-length after the expression.
2014-10-01 19:17:51 +02:00
Bobby Holley
ec9f41d32b Bug 1067009 - Implement regexp_toShared for CPOWs. r=billm 2014-10-01 17:22:15 +02:00
Bobby Holley
51208f79db Bug 1065811 - Track Xray waivers with CPOWs. r=billm 2014-09-25 13:13:29 +02:00
Bobby Holley
ecd6e25975 Bug 1065811 - Clean up ObjectId handling with static type checking. r=billm
While adding the CPOW flag for xray waivers, I discovered a bunch of
inconsistency and sloppiness with respect to our handling of object ids,
and a general lack of clarity about when the id included flags or not. Given
the fact that I'm removing static callability for CPOWs, we _could_ just get
rid of the flags, and store the xray waiver state on the answer-side only. But
I eventually decided that these kinds of flags (which are accessible to both
the Answer _and_ the Owner) had enough potential utility that they were worth
cleaning up.

It's worth noting that that utility comes with the large caveat that the flags
can't be trusted for security-sensitive decisions (at least in the parent->child
case), since they could be forged by a compromised child.
2014-09-25 13:13:29 +02:00
Bobby Holley
b4b92fa4cc Bug 1065811 - Stop statically computing callability/constructibility on CPOWs. r=billm 2014-09-25 13:13:29 +02:00
Bobby Holley
54afe3012b Bug 1065811 - Expose isCallable()/isConstructor() in JS_PUBLIC_API. r=billm 2014-09-25 13:13:28 +02:00
Jon Coppeard
23f8fad496 Bug 650161 - Unify the finalization and moving GC callbacks into a weak pointer update callback r=terrence r=bholley 2014-09-24 12:54:11 +01:00
Bobby Holley
5d41b32105 Bug 1052096 - Move CPOW targets into the privileged/unprivileged junk scope of the child/parent. r=billm 2014-09-12 17:41:18 -07:00
Bobby Holley
e5da9d6f66 Bug 1052096 - Move CPOWs into the privileged junk scope. r=billm 2014-09-12 17:41:18 -07:00
Jason Orendorff
1f0f4e29dc Bug 1065507, part 3 - Remove special support for js_GetterOnlyPropertyStub from js/ipc.
--HG--
extra : rebase_source : cc10de476c7c40324f9ae781c6e06500a53edb1b
2014-09-10 12:54:20 -05:00
Bill McCloskey
59d062f9a1 Bug 1060042 - CPOWs need a hasInstance hook (r=mrbkap) 2014-09-10 17:15:40 -07:00
Eric Faust
9b8255f0c4 Bug 966518 - Part 0: Make proxy callability into a trap, rather than a class check. (r=bholley, r=djvj, r=peterv) 2014-09-10 15:52:36 -07:00
Chris Peterson
b3b77faddd Bug 1063962 - Replace jschar typedef with C++11 char16_t type. r=jandem 2014-07-21 21:43:21 -07:00
Jon Coppeard
8a2d317b16 Bug 650161 - Add moving GC callback and use it to fix up ipc CPOW tables r=terrence 2014-09-02 11:07:22 +02:00
Ehsan Akhgari
17c1e053f0 Bug 1060988 - Fix more bad implicit constructors in JS IPC code; r=billm 2014-08-31 21:10:16 -04:00
Eric Faust
dd4eb066b2 Bug 1027425 - Make all Proxy handler constructors use MOZ_CONSTEXPR. (r=bz, r=froydnj) 2014-08-28 13:47:16 -07:00
Eric Faust
33d3cc6444 Bug 1017862 - Remove virtual destructor from BaseProxyHandler. (r=jorendorff) 2014-08-28 13:30:56 -07:00
Eric Faust
96d6ad8f2d Bug 1027964 - Standardize proxy handler families. (r=jorendorff) 2014-08-27 17:09:06 -07:00
Bill McCloskey
4a74bda656 Bug 1057601 - Use UncheckedUnwrap in CPOW code (r=mrbkap) 2014-08-22 18:18:00 -07:00
Bill McCloskey
ee93d477a9 Bug 1051127 - Add an env var for CPOW logging (r=mrbkap) 2014-08-20 13:01:32 -07:00
Bill McCloskey
8652680f22 Bug 1052093 - Child->parent CPOWs should go through COWs in the parent for security (r=bholley) 2014-08-20 12:49:10 -07:00
Bobby Holley
4c2d9e0211 Bug 1052089 - Rename JunkScope to PrivilegedJunkScope and remove fallibility of singleton scope access. r=billm
These two things ended up getting mushed together in my tree.
2014-08-18 10:57:30 -07:00
Bill McCloskey
163cfc3cc8 Bug 950745 - Back out assertions that are triggering too often 2014-08-15 16:16:42 -07:00
Bobby Holley
7c7704aa07 Bug 1052052 - Hoist Auto*JSContext into nsContentUtils and kill nsCxPusher.{cpp,h}. r=gabor 2014-08-14 18:47:15 -07:00
Ryan VanderMeulen
7c3098f03b Backed out changesets 5b1a3161f614, 17a9673ed782, and a9b8c346d295 (bug 1052052) for B2G non-unified bustage. 2014-08-14 17:23:10 -04:00
Bobby Holley
e5da39b71b Bug 1052052 - Hoist Auto*JSContext into nsContentUtils and kill nsCxPusher.{cpp,h}. r=gabor 2014-08-14 12:54:34 -07:00
Jon Coppeard
a4a71fde44 Bug 1052388 - Rename JS_CallHeapFooTracer() functions to JS_CallFooTracer() r=terrence r=smaug 2014-08-13 10:05:22 +01:00
Bill McCloskey
a83b99df4a Bug 950745 - Flag when we're processing urgent messages and disallow certain activities (r=bsmedberg,luke) 2014-08-05 21:43:36 -07:00
Bill McCloskey
71fa364cba Back out bug 950745 for crashes 2014-07-30 16:19:46 -07:00
Bill McCloskey
f021e199b6 Bug 950745 - Flag when we're processing urgent messages and disallow certain activities (r=bsmedberg,luke) 2014-07-17 21:09:45 -07:00
Jan de Mooij
43d1c81388 Bug 1034689 part 3 - Fix remaining places in Gecko to handle Latin1 strings. r=bz 2014-07-12 09:43:08 +02:00
Bill McCloskey
c3121f05b8 Bug 1029248 - Clean up CPOW unwrapping (r=mrbkap) 2014-07-10 16:47:04 -07:00
Jan de Mooij
3c7459b21a Bug 1034191 - Make nsDependentJSString users work with Latin1 strings and nursery-allocated strings. r=bz 2014-07-05 17:30:54 +02:00
Ryan VanderMeulen
fb6f81f8fb Backed out changesets 4a19dcbc7e7a and 4907115e02e3 (bug 1029248) for non-unified bustage.
CLOSED TREE
2014-07-03 13:19:29 -04:00
Bill McCloskey
488c311eb2 Bug 1029248 - Add helpers to simplify CPOW unwrapping (r=mrbkap) 2014-07-03 09:48:21 -07:00
Bill McCloskey
1a5d21d731 Bug 1017109 - Add construct hook for CPOWs (r=mrbkap) 2014-06-30 17:50:58 -07:00
Bill McCloskey
da6ed6a9d6 Bug 1029202 - Allow CPOW receivers to be non-CPOWs (r=mrbkap) 2014-06-30 17:48:09 -07:00
Eric Faust
ec142f1ef6 Bug 1027402 - Part 3: Mark all Proxy Handler methods const. (r=jorendorff, r=bz) 2014-06-27 04:44:06 -07:00
Eric Faust
4fcd931d23 Bug 1027402 - Part 2: Mark Proxy Handler instances as const. (r=bholley, r=bz over IRC) 2014-06-27 04:44:04 -07:00
Carsten "Tomcat" Book
ae32e4a7cc Backed out changeset 346912776f97 (bug 1027402) 2014-06-27 14:21:22 +02:00
Carsten "Tomcat" Book
5f562e29f0 Backed out changeset 285c853fedfa (bug 1027402) 2014-06-27 14:21:20 +02:00
Eric Faust
a3511c108a Bug 1027402 - Part 3: Mark all Proxy Handler methods const. (r=jorendorff, r=bz) 2014-06-27 04:44:06 -07:00
Eric Faust
9f81106775 Bug 1027402 - Part 2: Mark Proxy Handler instances as const. (r=bholley) 2014-06-27 04:44:04 -07:00
"Kan-Ru Chen (陳侃如)"
95bc816ffe Bug 879475 - Part 005. Implement ContentBridge r=jlebar
Based on original patch by David Zbarsky <dzbarsky@gmail.com>
2014-06-11 13:44:13 +08:00
Bill McCloskey
ebe975d874 Bug 957742 - Add missing include 2014-05-28 18:28:24 -07:00
Bill McCloskey
0dc8b5b436 Bug 957742 - Fix compile error 2014-05-28 18:25:06 -07:00
Bill McCloskey
5ef958a929 Bug 1014993 - Add special toString method to CPOWs (r=mrbkap) 2014-05-28 18:05:23 -07:00
Tom Schuster
28ef5afa8b Bug 957742 - Logging for CPOWs (r=mrbkap) 2014-05-28 18:05:22 -07:00
Bill McCloskey
366c658c5d Bug 996785 - Fix CPOW wrapping and compartment ownership (r=mrbkap) 2014-05-16 16:40:37 -07:00
Bill McCloskey
f080a0f66d Bug 996785 - Bidirectional CPOWs (r=mrbkap) 2014-05-16 16:40:37 -07:00
Bill McCloskey
ace030e0bb Bug 996785 - Distinguish local and remote CPOW objects in IPDL (r=mrbkap) 2014-05-16 16:40:36 -07:00
Bill McCloskey
ecb5b87e51 Bug 996785 - Use more descriptive IPDL types for CPOW value variants (r=mrbkap) 2014-05-16 16:40:36 -07:00
Bill McCloskey
ce0b3770fa Bug 996785 - Move CPOW wrapper answering code (r=mrbkap) 2014-05-16 16:40:36 -07:00
Bill McCloskey
ed734e4635 Bug 996785 - Move CPOW wrapper owner code (r=mrbkap) 2014-05-16 16:40:36 -07:00
Bill McCloskey
901e4a099f Bug 996785 - Use separate maps for local and remote CPOW objects (r=mrbkap) 2014-05-16 16:40:36 -07:00
Bill McCloskey
708db6e2a8 Bug 996785 - Rename CPOW makeId/unwrap (r=mrbkap) 2014-05-16 16:40:35 -07:00
Bill McCloskey
8f0019b5b9 Bug 996785 - Rename CPOW toValue (r=mrbkap) 2014-05-16 16:40:35 -07:00
Bill McCloskey
dbfc9e7d7b Bug 996785 - Rename CPOW findObject (r=mrbkap) 2014-05-16 16:40:35 -07:00