Commit Graph

77 Commits

Author SHA1 Message Date
Bobby Holley
825af5fcd8 Bug 965898 - Implement proper behavior for [[Enumerate]] And [[OwnPropertyKeys]]. r=gabor 2014-07-30 12:23:02 -07:00
Bobby Holley
7db28dae27 Backed out 16 changesets (bug 965898) for rooting hazards. CLOSED TREE
Backed out changeset ac4abde3579f (bug 965898)
Backed out changeset c4c7ab1a2f70 (bug 965898)
Backed out changeset e0bf3598dfe1 (bug 965898)
Backed out changeset 8f2788a0ba24 (bug 965898)
Backed out changeset 0d1cda4decaa (bug 965898)
Backed out changeset 3d80ffc439fb (bug 965898)
Backed out changeset ad66ab36fe2d (bug 965898)
Backed out changeset dcf7ccf6eff2 (bug 965898)
Backed out changeset d3f02e80355d (bug 965898)
Backed out changeset 212f2d05d9e7 (bug 965898)
Backed out changeset c350a2c0aa6d (bug 965898)
Backed out changeset c75acd0663a9 (bug 965898)
Backed out changeset d68f7ef0ae69 (bug 965898)
Backed out changeset 610e6d6e1a88 (bug 965898)
Backed out changeset 54d40a30f6ad (bug 965898)
Backed out changeset 403a0e1d2324 (bug 965898)
2014-07-29 22:57:59 -07:00
Bobby Holley
f2b2ae9683 Bug 965898 - Implement proper behavior for [[Enumerate]] And [[OwnPropertyKeys]]. r=gabor 2014-07-29 21:35:31 -07:00
Bobby Holley
f99be51d16 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
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
Birunthan Mohanathas
eaba6c5a37 Bug 866289 - Make mode lines consistent in js/xpconnect/ for 4 space indented files. r=Ms2ger 2014-04-03 07:58:00 -04:00
Jason Orendorff
d50e6f5a9b Bug 547140, part 2 - Remove flags argument from JS_GetPropertyDescriptor and friends. r=Waldo. 2014-04-25 16:11:01 -05:00
Bobby Holley
21fc488f1f Bug 975042 - Basic Xray infrastructure and boilerplate. r=peterv
All of this machinery asserts if it actually get used. But it won't be used at
present, because we have an empty whitelist of JSProtoKeys.
2014-03-23 11:02:12 -03:00
Carsten "Tomcat" Book
bb48a49dd4 Backed out changeset 351371062c26 (bug 975042) 2014-03-21 08:47:48 +01:00
Bobby Holley
2b514f18c9 Bug 975042 - Basic Xray infrastructure and boilerplate. r=peterv
All of this machinery asserts if it actually get used. But it won't be used at
present, because we have an empty whitelist of JSProtoKeys.
2014-03-20 23:47:23 -03:00
Bobby Holley
2ec68b243f Bug 975277 - Clean up the XPCWN XrayHolder a bit. r=gabor 2014-02-21 15:55:31 -08:00
Peter Van der Beken
24f17f7f15 Bug 975277 - Add some machinery to allow Traits to specify whether they want to use hasPrototype or not. r=bholley,efaust 2014-02-21 15:55:30 -08:00
Eric Faust
e1ed4ead58 Bug 926012 - Part 3: Convert wrappers to using dynamic prototype hooks. (r=bholley) 2013-12-13 12:01:30 -08:00
Ehsan Akhgari
deb33a30a9 Bug 939608 - Part 1: Code changes required to build xpconnect in unified mode; r=bholley
--HG--
extra : rebase_source : e691b361737fbb233a0b33ed7fc6aa97ae172223
2013-11-19 15:03:40 -05:00
Carsten "Tomcat" Book
db4be58213 Backed out changeset 161bfee3f57a (bug 939608) PGO build issue 2013-11-19 14:13:15 +01:00
Ehsan Akhgari
e71e84c404 Bug 939608 - Build xpconnect in unified mode; r=bholley 2013-11-18 00:47:30 -05:00
Bobby Holley
9378a80390 Bug 856437 - Remove same-compartment permissive Xray machinery. r=gabor 2013-09-11 11:28:21 -07:00
Dan Gohman
8b7074b6dc Bug 910823 - Constify static js::Class/JSClass instances. r=waldo 2013-09-11 05:49:05 -07:00
Ehsan Akhgari
63120f149f Bug 913851 - Minimize the #includes in js/xpconnect; r=bholley
X-Git-Commit-ID: 78e6843063b303780a7dd2695dd2824a0a9c9a3c

--HG--
extra : rebase_source : 1dfcc228f43c68efbbc74f639570c227c26ef025
2013-09-09 23:14:10 +02:00
Nicholas Nethercote
42ccf38dcd Bug 905017 (part 1) - Minimize inclusions of JS engine headers in .h and .idl files. r=billm.
--HG--
extra : rebase_source : 984c61ab12f46be0509b1ce0d458d9a6e5841c64
2013-08-17 15:50:18 -07:00
Nicholas Nethercote
d3ebe3414c Bug 898263 (part 7) - Remove jsprvtd.h from EXPORTS. r=jorendorff.
--HG--
extra : rebase_source : eca8164f8652587796a8283932d8ba8ec76c0b5b
2013-07-25 22:52:59 -07:00
Terrence Cole
61b15c2fbb Bug 862115 - Use Rooted<JSPropertyDescriptor> in favor of JSPropertyDescriptor::AutoRooter r=terrence r=smaug r=bholley 2013-04-30 10:29:40 -07:00
Nicholas Nethercote
b756f6b258 Bug 898914 (part 1) - Remove JSBool.
--HG--
extra : rebase_source : 2d202e0e5005a7f54724b1540481c15cde3ad52e
2013-08-08 15:53:04 -07:00
Jeff Walden
296b917e73 Bug 888106 - Add too-much-recursion detection to isExtensible tests, and make the isExtensible hook capable of failing. r=bholley, r=ejpbruel
--HG--
extra : rebase_source : fe7345322f87dd214aa5122ea8704750e8b2375a
2013-06-28 14:01:09 -07:00
Jon Coppeard
2632590a6e Bug 885310 - 2 Rename JSHandleFoo in js directory r=bholley 2013-06-21 14:12:46 +01:00
Jon Coppeard
63011a7ca0 Bug 884371 - Remove JSMutableHandleXXX from the js directory r=bholley 2013-06-19 11:32:27 +01:00
Bobby Holley
c72d0f8113 Bug 858101 - Run the DefaultValue algorithm directly on the wrapper for Xrays. r=mrbkap 2013-05-31 10:36:01 -07:00
Jon Coppeard
4764cd3074 Bug 861887 Review comments for prev patch r=bholley
--HG--
extra : rebase_source : 7f91680f5f7249c9fb09708eb790bdc19c779c67
2013-04-24 14:22:21 +01:00
Jon Coppeard
8710c00b07 Bug 861887 - GC: Rooting in XrayWrapper.cpp - part 2 r=bholley 2013-04-24 10:45:41 +01:00
Bobby Holley
a7ec941075 Bug 860494 - Check for native properties before checking named children on XOWs. r=bz 2013-04-23 12:50:17 -04:00
Ms2ger
e38aa0d743 Bug 852602 - Pass CallArgs to Proxy call() and construct() hooks; r=Waldo 2013-04-04 09:02:24 +02:00
Jon Coppeard
acfef2ab1e Bug 854955 - GC: Rooting in XrayWrapper.cpp r=bholley
--HG--
extra : rebase_source : fdee7c16f54e1fcbf4ae96e89ffd20eb14ec2d8d
2013-03-27 11:33:30 +00: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
Ryan VanderMeulen
957687a97e Backed out bug 789897 due to regressions. 2013-03-29 14:07:32 -04: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
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
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
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
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
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