Commit Graph

162 Commits

Author SHA1 Message Date
Bobby Holley
f6b09836a4 Bug 907508 - Define the slot count for xpconnect and worker globals in terms of the slots defined in DOMJSClass.h. r=bz 2013-08-20 21:21:00 -07:00
Bobby Holley
84d666b750 Bug 907508 - Drop the slot count for worker globals from 3 to 1. r=bz
Continuing the analysis of the previous patch, we actually have two free slots.

The first comes from the removal of DOM_GLOBAL_OBJECT_SLOT, as in the previous
patch.

The second comes from the fact that we mirrored the XPConnect slot for the
XPCWrappedNativeScope (so that slot offsets would be the same for workers and
non-workers), but didn't drop the slot count in bug 797821.
2013-08-20 21:21:00 -07:00
Nicholas Nethercote
849635b8f1 Bug 898914 (part 1) - Remove JSBool.
--HG--
extra : rebase_source : 2d202e0e5005a7f54724b1540481c15cde3ad52e
2013-08-08 15:53:04 -07:00
Nicholas Nethercote
c1d8302699 Bug 901750 - Change return type of |JSNative| from |JSBool| to |bool|. code=nnethercote,jandem. r=luke,bz.
--HG--
extra : rebase_source : 5b3d7cc339af6d93bde078322e25c6e740d1b617
2013-08-02 00:41:57 -07:00
Kyle Huey
6a4d059236 Bug 845545: Part 5 - Port ImageData to workers. r=mccr8,peterv,bent 2013-08-03 16:55:40 -07:00
Bobby Holley
595cbc9fd5 Bug 897322 - Allow callers to manually fire OnNewGlobalObject when bootstrapping is complete. r=luke 2013-08-01 18:38:47 -07:00
Tom Schuster
d1a26edded Bug 884410 - Handlify JS_SetPrototype. r=terrence 2013-07-31 12:20:33 -04:00
Bobby Holley
99246966e4 Bug 899245 - Rename JS_GetGlobalForScopeChain to JS::CurrentGlobalOrNull. r=luke
This was done with perl/grep.
2013-07-29 16:45:27 -07:00
Jon Coppeard
fd4d274d46 Bug 897484 - GC: Convert JS_GetProperty APIs to take MutableHandleValue r=terrence r=bholley r=smaug 2013-07-26 10:00:38 +01:00
Carsten "Tomcat" Book
ac22f0d0ad Backed out changeset ae8d72538dee (bug 897484) for b2g bustage 2013-07-26 12:34:25 +02:00
Jon Coppeard
fed22eac4c Bug 897484 - GC: Convert JS_GetProperty APIs to take MutableHandleValue r=terrence r=bholley r=smaug 2013-07-26 10:00:38 +01:00
Ms2ger
9d125e581b Bug 878600 - Move WorkerLocation to WebIDL; r=khuey 2013-07-24 09:41:55 +02:00
Ms2ger
2aa5daadda Bug 878401 - Move WorkerNavigator to WebIDL; r=khuey 2013-07-24 09:38:23 +02:00
Jon Coppeard
8bcb261a97 Bug 888338 - 7 - add post barriers to workers r=smaug 2013-07-23 10:58:27 +01:00
Bobby Holley
c5c7c812ca Bug 880917 - Convert JS_SetVersion API consumers to per-compartment versions. r=luke 2013-06-29 09:11:18 -06:00
Jon Coppeard
19b426b223 Bug 885310 - 1 Rename JSHandleFoo in the browser r=bz 2013-06-21 14:12:46 +01:00
Terrence Cole
066e7ee97b Bug 884410 - Handlify the JS_ResolveStandardClass interface; r=jonco
--HG--
extra : rebase_source : 3ba45931aad97fb7cbca517ae9bccb974d42e57a
2013-06-13 17:10:00 -07:00
Jon Coppeard
da723794cd Bug 884371 - Remove JSMutableHandleXXX from the browser r=bz 2013-06-19 11:32:27 +01:00
Boris Zbarsky
14e7edc59d Bug 876805. Fix unsafe reference gc hazards in dom/ code. r=smaug 2013-05-29 16:16:04 -04:00
Boris Zbarsky
620839f027 Bug 868312 finale: finish rooting dom/ code. r=smaug 2013-05-17 21:48:25 -04:00
David Zbarsky
3a5f2fa41d Bug 868312 - Some more rooting fixes for dom r=bz 2013-05-10 22:39:45 -04:00
David Zbarsky
3c839fc3b2 Bug 868312: Root dom/workers r=bz 2013-05-09 03:27:40 -04:00
Terrence Cole
fd72fc252e Bug 777548 - Make non-cc-participant tracing indirect; r=smaug,billm,jst 2013-03-28 13:37:22 -07:00
Bobby Holley
b860f670ea Bug 869800 - Remove JS_GetGlobalObject from workers. r=bent 2013-05-08 10:45:46 -07:00
David Zbarsky
b232701621 Bug 868312: Various dom rooting fixes, part 2 r=bz 2013-05-04 03:53:00 -04:00
Boris Zbarsky
8cc9072bea Bug 861022 part 2. Root the global object in WebIDL prototype and interface object setup. r=peterv,terrence 2013-05-01 23:44:12 -04:00
Terrence Cole
60ff037fa7 Bug 860050 - Remove JSMutableHandleObject typedef; r=bz,jonco 2013-04-16 16:20:44 -07:00
Xin Zhang
5e389b35b8 Bug 857385 - Make various JSFunctionSpec arrays const. r=waldo
--HG--
extra : rebase_source : 24141998ffad3b0e6bad98b6fc0ce3754e448d5b
2013-04-22 14:15:49 -07:00
Xin Zhang
a0b5d7e7b5 Bug 857385 - Make various JSPropertySpec arrays const. r=waldo
--HG--
extra : rebase_source : 4ad63f7ddf8c441219bb7f30e19d66abf1747fe2
2013-04-22 14:15:36 -07:00
Jeff Walden
6539207aee Bug 858677 - Fix up code not built by SpiderMonkey to use the newly-changed deletion signatures. r=bholley, r=billm 2013-04-05 21:22:55 -07:00
Terrence Cole
16aae426b8 Bug 855145 - DeMACROize the JS tracing interfaces; r=billm,mccr8
--HG--
extra : rebase_source : 915c80052b4412f653033eb5fc4d4f96c5d49bd5
2013-03-26 15:10:34 -07:00
Boris Zbarsky
06b43e1a81 Bug 854001 part 1. Give workers that are pretending to be on WebIDL bindings separate JSClasses for instance objects and prototype objects. r=peterv,bent 2013-03-28 15:43:33 -04:00
Andrea Marchesini
5973a08965 Bug 813253 - URL.createobjectURL in WebWorker. r=bent 2013-02-05 18:17:17 -05:00
Gavin Sharp
9e6a9aed49 Bug 827193: fix typo in WorkerScope, r=khuey
--HG--
extra : rebase_source : 2ccc411444fd9b16d96d152d4f85931c1706f359
2013-01-07 11:18:19 -08:00
Masatoshi Kimura
2393413478 Bug 795542 - Part 2: Implement StringEncoding API objects in Workers. r=bent 2012-12-22 09:16:14 +09:00
Boris Zbarsky
0cd18878d3 Bug 818263. Make the EventTarget binding work for nodes. r=smaug,peterv 2012-12-06 20:39:51 -05:00
Boris Zbarsky
fa853f8a85 Bug 815803. Now that JSSLOT_PROXY_PRIVATE == 0, simplify binding code that had to deal with different slot indices on proxy and non-proxy objects. r=peterv 2012-12-06 15:21:19 -05:00
Peter Van der Beken
56542d0819 Fix for bug 818219 (Replace HTMLElement quickstubs with new binding methods) - Remove hardcoded interface list in workers. r=bz.
--HG--
extra : rebase_source : 87b106b79f8e5912f10a603e407da1c93be4ed5d
2012-12-06 11:41:14 +01:00
Matt Joras
6d89044915 Bug 798033 - Removes 'using namespace' from dom headers - r=khuey 2012-11-10 10:45:52 -05:00
Ryan VanderMeulen
1501d1c8ce Backed out changeset 5054c2552a30 (bug 798033) for b2g bustage. 2012-11-10 11:52:15 -05:00
Matt Joras
cca020df08 Bug 798033 - Removes 'using namespace' from dom headers - r=khuey 2012-11-10 10:45:52 -05:00
Peter Van der Beken
99782186da Fix for bug 778152 (Content window does not have an XMLHttpRequest property when accessed via an Xray wrapper in a subscript). r=bz.
Switch from using the interface objects from the Xrays compartment to wrapping
interface objects and interface prototype objects in Xrays. Make dom binding
Xrays deal with both instance objects and interface and interface prototype
objects.
2012-10-09 20:50:27 +02:00
Peter Van der Beken
da84553f1f Fix for bug 778152 (Content window does not have an XMLHttpRequest property when accessed via an Xray wrapper in a subscript) - rename ProtoOrIfaceArray. r=bz.
--HG--
extra : rebase_source : c426270fc1ebee818629bd94dfc8d11af59bfc00
2012-10-09 20:50:27 +02:00
Isaac Aggrey
9e41ce2fa0 Bug 794510: Part 2: Use more stdint types instead of protypes.h types; r=ehsan 2012-10-11 18:38:04 -05:00
Bobby Holley
9f982e86a6 Bug 761695 - Implement expando traps for ProxyXrayTraits DOMXrayTraits. r=peterv
For new DOM proxies, we could probably use the Xray expando machinery for the
regular expando object as well, and free up one of the reserved slots. That's
more than I want to bite off for the moment, though.

I also decided not to block on bug 760095 and just kick the problem of globals
with new binding down the road a little bit.
2012-10-05 18:59:23 +02:00
Andrea Marchesini
9f37766b0b Bug 720083 - Workers: add support for transferable objects from HTML5 spec. r=sphink, r=bent 2012-10-03 18:19:22 -04:00
Phil Ringnalda
4201311ebf Back out b24a73b2c617 for Windows build bustage and test_xhr_timeout.html failure 2012-09-27 21:24:42 -07:00
Andrea Marchesini
7e21557bd5 Bug 720083 - Workers: add support for transferable objects from HTML5 spec. r=sphink, r=bent 2012-09-27 23:05:59 -04:00
Kyle Huey
f29709dd83 Bug 793025: Convert FileReaderSync to WebIDL bindings. r=bz 2012-09-20 19:47:47 -07:00
Ms2ger
541b92080a Bug 768793 - Remove DOMJSClass::mGetWrapperCacheVTableOffset; r=khuey 2012-09-06 09:14:49 +02:00
Andrea Marchesini
49d8fc730d Bug 788181. Fix instanceof for XHR and XHR.upload in workers. r=peterv 2012-09-05 13:37:27 -04:00
Luke Wagner
ce71e55555 Bug 625199 - s/JSAutoEnterCompartment/JSAutoCompartment/ and make it infallible (r=bholley)
--HG--
extra : rebase_source : 12acf2288285f5caefd7fecea8207de3a47eab5b
2012-08-21 18:42:53 -07:00
Peter Van der Beken
854457d901 Fix for bug 768692 (Move DOM list binding generation to the new DOM binding codegen). r=bzbarsky.
--HG--
extra : rebase_source : 651a0fac4c9a87ef1c0a9cd91588c6421fd050c4
2012-05-22 15:46:20 +02:00
Peter Van der Beken
ec7ce6d4f0 Fix for bug 775543 (Passing a Worker object to console.log() results in a crash). r=bz.
--HG--
extra : rebase_source : 60ee731af1e77c21f466026a04c71eeb96b1ff7d
2012-08-22 18:16:14 -07:00
Eric Faust
028d3cc41a Bug 766448 - Refactor JSPropertySpec and JS_DefineProperties to accept JSJitInfos. (r=Waldo) 2012-08-07 22:26:18 -07:00
Ms2ger
c861fd0028 Bug 743573 - Fix a number of build warnings in dom/; r=mounir 2012-08-07 09:06:29 +02:00
Brian Hackett
4da0b7720d Use HandleValue and MutableHandleValue in API hooks where possible, bug 776579. r=billm, sr=dmandelin 2012-07-30 05:19:09 -06:00
Bill McCloskey
3f0d55e974 Bug 770999 - Add get() method to Handle<T> and Rooted<T> (r=bhackett) 2012-07-04 13:34:42 -07:00
Bill McCloskey
943f752751 Bug 770759 - Add mutable handles (r=bhackett) 2012-07-04 11:12:16 -07:00
Blake Kaplan
99bfdd86fe Bug 769265 - Fix these calls. r=bent 2012-06-28 16:14:11 +02:00
Luke Wagner
0c274df8bd Bug 755186 - s/JS_NewCompartmentAndGlobalObject/JS_NewGlobalObject/ (r=jorendorff)
--HG--
extra : rebase_source : f1ead9226915f72473a01db0a1019cdbe50c8e92
2012-06-20 08:57:29 -07:00
Boris Zbarsky
31ccf86cf9 Bug 761707 part 2. Drop the vestigial jsclass argument to UnwrapDOMObject. r=bholley 2012-06-06 15:59:46 -04:00
Boris Zbarsky
e90ba0af0f Bug 761707 part 1. Rip out the various infrastructure for allowing different slot indices on different DOMJSClass instances. r=bholley 2012-06-06 15:59:46 -04:00
Peter Van der Beken
5e88453bf6 Fix for bug 741263 (Paris bindings constructors shouldn't abuse reserved identifiers). r=bz.
--HG--
extra : rebase_source : cec6a0ffc58f3d7d262dc9658d52aac424ec715a
2012-04-26 22:57:33 +02:00
Gervase Markham
87620f5676 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Brian Hackett
f8aa8c3c5a Use handles in API object hooks where possible, bug 750733. r=billm 2012-05-19 15:03:45 -07:00
Brian Hackett
aeda1d5c01 Backed out changeset 5fc7462dd394 for android orange. 2012-05-19 11:52:55 -07:00
Brian Hackett
54e8d378fb Use handles in API object hooks where possible, bug 750733. r=billm 2012-05-19 09:48:09 -07:00
Tom Schuster
889e3a0487 Bug 752226 - Remove any use of JSVAL_IS_OBJECT. r=luke,Ms2ger 2012-05-11 17:46:26 +02:00
Ed Morley
4c4c3cfd18 Backout 9b0fcaacb788 & bf3fef257e68 (bug 752226) for mochitest-other orange 2012-05-11 18:25:52 +01:00
Tom Schuster
6e0861373a Bug 752226 - Remove any use of JSVAL_IS_OBJECT. r=luke,Ms2ger
--HG--
extra : rebase_source : edf2077f8b8bad1970eab6ebe9996e761d4e596c
2012-05-11 17:46:26 +02:00
David Rajchenbach-Teller
e6457109ef Bug 739740 - Export libc constants to JS. r=khuey 2012-05-09 12:00:48 +02:00
Boris Zbarsky
fa88b9861d Bug 749485. Switch new DOM bindings to using a struct for keeping track of failures for fallible methods. r=peterv,bent
ErrorResult is in a separate header file so it can be included from all over the
place without having to pull in mozilla/dom/Utils.h and all the xpconnect gunk
that needs.
2012-05-05 21:15:11 -04:00
Phil Ringnalda
d3adeb4433 Back out 1907bf7e6d7c (bug 749485) for build bustage 2012-05-05 20:33:59 -07:00
Boris Zbarsky
cc67ef4fb6 Bug 749485. Switch new DOM bindings to using a struct for keeping track of failures for fallible methods. r=peterv,bent
ErrorResult is in a separate header file so it can be included from all over the
place without having to pull in mozilla/dom/Utils.h and all the xpconnect gunk
that needs.
2012-05-05 21:15:11 -04:00
Ryan VanderMeulen
4392d08bb5 Back out b5fd22efe23d (bug 739740) due to bustage. r=TryFTW 2012-05-03 18:51:14 -04:00
David Rajchenbach-Teller
e67cd24a59 Bug 739740 - Export libc constants to JS. r=khuey,glandium 2012-04-30 12:14:38 +02:00
Peter Van der Beken
926ed983fc Fix for bug 744772 (Trace the DOM interface object array). r=bz.
--HG--
extra : rebase_source : c9f27bed0eab0e6db03295050176ef986cf0b59b
2012-05-02 14:49:43 +02:00
Boris Zbarsky
224115946f Bug 742217. Reduce the use of nested namespaces in our binding code. r=peterv,bent
In the new setup, all per-interface DOM binding files are exported into
mozilla/dom.  General files not specific to an interface are also exported into
mozilla/dom.

In terms of namespaces, most things now live in mozilla::dom.  Each interface
Foo that has generated code has a mozilla::dom::FooBinding namespace for said
generated code (and possibly a mozilla::bindings::FooBinding_workers if there's
separate codegen for workers).

IDL enums are a bit weird: since the name of the enum and the names of its
entries all end up in the same namespace, we still generate a C++ namespace
with the name of the IDL enum type with "Values" appended to it, with a
::valuelist inside for the actual C++ enum.  We then typedef
EnumFooValues::valuelist to EnumFoo.  That makes it a bit more difficult to
refer to the values, but means that values from different enums don't collide
with each other.

The enums with the proto and constructor IDs in them now live under the
mozilla::dom::prototypes and mozilla::dom::constructors namespaces respectively.
Again, this lets us deal sanely with the whole "enum value names are flattened
into the namespace the enum is in" deal.

The main benefit of this setup (and the reason "Binding" got appended to the
per-interface namespaces) is that this way "using mozilla::dom" should Just
Work for consumers and still allow C++ code to sanely use the IDL interface
names for concrete classes, which is fairly desirable.

--HG--
rename : dom/bindings/Utils.cpp => dom/bindings/BindingUtils.cpp
rename : dom/bindings/Utils.h => dom/bindings/BindingUtils.h
2012-05-03 00:35:38 -04:00
Peter Van der Beken
1780bb4050 Fix for bug 741267 (UserScript's XMLHttpRequest is undefined in 20120401 nightly).
Pass two objects when creating a DOM interface object, the global used to cache
the DOM interface objects and a receiver object on which the named property is
that points to the DOM interface object.

--HG--
extra : rebase_source : b462393e7376fdb68f3b279ccd08b3ab25ac154a
2012-04-23 16:10:56 +02:00
Bobby Holley
e19dec1378 Bug 743615 - Introduce the ImageData object/constructor in workers. r=bent 2012-04-24 12:58:08 +02:00
Igor Bukanov
3a859b7a76 Bug 737365 - stop using the cx during finalization, part 1.
This part changes the signatures for various finalization API to take
not JSContext* but rather either JSFreeOp structure or its
library-private counterpart FreeOp. These structures wrap parameters
that are passed to the finalizers removing most of explicit dependencies
on JSContext in the finalization code.
2012-03-19 15:34:55 +01:00
Peter Van der Beken
09128a75d3 Fix for bug 740069 (Generate JS bindings in C++ with a python script for DOM objects on the main thread and in workers. Infrastructure and new bindings for XMLHttpRequest). Patch by bent/bz/bholley/jst/khuey/peterv, r=bent/bz/bholley/jlebar/khuey/peterv/sicking/smaug.
--HG--
rename : js/xpconnect/tests/mochitest/test_bug462428.html => dom/bindings/test/test_lookupGetter.html
2012-03-30 21:42:20 -07:00
Igor Bukanov
ed3f5972bd 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
Mark Hammond
460967a978 Bug 728986: dump() writes to stdout instead of stderr. r=bent 2012-03-06 15:44:37 +11:00
David Mandelin
60e80d55b6 Bug 730511: remove obsolete typedefs intN, uintN, r=luke 2012-02-28 15:11:11 -08:00
Igor Bukanov
fc29d0f64c bug 726944 - Remove JSClass::xdrObject and related functionality. r=luke 2012-02-13 09:02:21 +01:00
Bill McCloskey
6b3aa0565d Bug 641025 - Incremental GC (r=igor,smaug,roc,cdleary,gregor) 2012-02-17 14:35:20 -08:00
Igor Bukanov
748c9f34a7 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
38fe4ed717 backout merge for bug 724310. r=irc 2012-02-09 21:28:22 +01:00
Igor Bukanov
e4e3433d0c 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
Igor Bukanov
3163d5e91e bug 723517 - Drop cx argumrent from JS_GetClass(cx, obj). r=luke 2012-02-04 01:54:57 +01:00
Igor Bukanov
0c1bc419b6 bug 723510 - Workers: double-error reporting in location.toString and incorrect assumption about JS_GetInstancePrivate. r=bent 2012-02-03 19:00:08 +01:00
Ben Turner
ed78ee5e53 Bug 718202. r=jst.
--HG--
extra : transplant_source : %1En%B7%8CN%F4kl%A8%3D%8C%8A%99%9A%10%F7%F4o%01l
2012-01-18 10:05:38 -08:00
Ben Turner
05e0f51928 Bug 718311. r=mrbkap.
--HG--
extra : transplant_source : %BB%A6%E6%5E%D5%21E%11m%82%1AM%87%94%0C%E6%9A%5C%95e
2012-01-17 12:06:10 -08:00
Ms2ger
6b0c6353bd Bug 677079 - Part d: Move js_GetErrorMessage to jsfriendapi.h; r=jorendorff 2012-01-15 09:13:08 +01:00
Ms2ger
a63b21f505 Bug 713550 - Move Base64 code on nsXPConnect to XPCOM / xpcpublic.h; r=bholley+khuey 2011-12-28 09:13:38 +01:00
Blake Kaplan
f81b042b92 Bug 712341 - Make dump in workers show up in adb logcat. r=bent
--HG--
extra : rebase_source : c17d8195b47dd908fa98e371b12647ccfccfc760
2011-12-07 02:29:34 -08:00
Jeff Walden
476c7d19c5 Bug 708735 - Use <stdint.h> types in JSAPI and throughout SpiderMonkey. Continue to provide the {u,}int{8,16,32,64} and JS{Uint,Int}{8,16,32,64} integer types through a single header, however, for a simpler backout strategy -- and also to ease the transition for embedders. r=timeless on switching the jsd API to use the <stdint.h> types, r=luke, r=dmandelin 2011-12-08 22:54:10 -05:00
Brian Hackett
f0c35c0584 Merge MC -> JM 2011-12-03 10:34:26 -08:00