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

90 Коммитов

Автор SHA1 Сообщение Дата
Olli Pettay 49e1f7bbd7 Bug 1183604, add some more assertions to help implementing new cycle collectable classes, r=mccr8
--HG--
extra : rebase_source : e9f4bf6a9dce11e816b0f4f0cf1bfad61f831eeb
2015-07-29 13:28:45 +03:00
Ryan VanderMeulen a4bdad4b8a Backed out changeset 40c187d91db4 (bug 1183604) for hazard analysis failures.
CLOSED TREE
2015-07-28 21:20:34 -04:00
Olli Pettay d6c700fd74 Bug 1183604, add some more assertions to help implementing new cycle collectable classes, r=mccr8
--HG--
extra : rebase_source : 2afa00fa6890ec4f2634aa53d361fd837c6161ae
2015-07-28 20:02:15 +03:00
Jeff Gilbert 9afb8379f2 Bug 1182369 - Remove js/Class.h include from nsWrapperCache.h. - r=bz 2015-07-09 12:32:04 -07:00
Andrew McCreight 9e8f4b219e Bug 1152551, part 2 - Fix mode lines in dom/. r=jst 2015-05-03 15:32:37 -04:00
Andrea Marchesini 5c1e2ee932 Bug 1156632 - Remove unused forward class declarations - patch 1 - dom/base, r=ehsan 2015-04-22 08:29:15 +02:00
Boris Zbarsky dc24477d79 Bug 1117172 part 3. Change the wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
The only manual changes here are to BindingUtils.h, BindingUtils.cpp,
Codegen.py, Element.cpp, IDBFileRequest.cpp, IDBObjectStore.cpp,
dom/workers/Navigator.cpp, WorkerPrivate.cpp, DeviceStorageRequestChild.cpp,
Notification.cpp, nsGlobalWindow.cpp, MessagePort.cpp, nsJSEnvironment.cpp,
Sandbox.cpp, XPCConvert.cpp, ExportHelpers.cpp, and DataStoreService.cpp.  The
rest of this diff was generated by running the following commands:

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObject\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx|aContext|aCtx|js), [^,)]+)\)/\1, aGivenProto)/g'
2015-03-19 10:13:33 -04:00
Bill McCloskey 989fdd3474 Bug 1133594 - Add support for message manager process scripts (r=smaug) 2015-02-19 17:13:02 -08:00
Jon Coppeard a3adff24a8 Bug 650161 - Relocate global objects (browser changes) r=bholley 2014-10-20 09:07:43 +01:00
Peter Van der Beken dcda2ba9bb Bug 1078744 - Replace SetIsDOMBinding with SetIsNonDOMBinding, remove nsWrapperCache::SetIsDOMBinding. r=bz.
--HG--
extra : rebase_source : 89c476cd9436530b2df5acc903909e34188417a0
2014-10-07 11:44:49 +02:00
Peter Van der Beken 962c9a5742 Bug 1078744 - Replace SetIsDOMBinding with SetIsNonDOMBinding, invert the flag for dom bindings in nsWrapperCache and add SetIsNotDOMBinding. r=bz.
--HG--
extra : rebase_source : 6ca1903658d3d6fe2634409cd39fa68c6b1219bd
2014-10-07 11:44:48 +02:00
Peter Van der Beken a0f306343e Bug 808856 - Make not overriding WrapObject fail to build. r=ehsan.
--HG--
extra : rebase_source : 4683c70c97f7eea454bc445331dbbbe7c4f2cec7
2014-10-07 11:44:48 +02:00
Jon Coppeard 43b5e6a717 Bug 650161 - Allow for the possibility that the wrapper cache hasn't been initialized yet when updating it r=bz 2014-10-03 10:04:19 +01:00
Jon Coppeard 2013670e0e Bug 650161 - We don't need an objectMoved hook for global objects r=terrence 2014-09-29 09:50:17 +01:00
Jon Coppeard 64b91b1c09 Bug 650161 - Use the object moved hook to update the wrapper cache r=terrence r=bz r=bholley
* * *
Add exception for objectMoved hook as we do for finalize hook
2014-09-17 15:35:11 +01:00
Johnny Stenback 3dec192ac2 Bug 798188. Add table version of NS_WRAPPERCACHE_INTERFACE_MAP_ENTRY, and add an else at the end of NS_WRAPPERCACHE_INTERFACE_MAP_ENTRY to avoid this breaking QI maps if used at the end of a map. r=peterv
---
 dom/base/nsWrapperCache.h | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
2014-08-25 16:21:35 -07:00
Jon Coppeard 511f6ef1c5 Bug 1052388 - Rename JS_CallHeapFooTracer() functions to JS_CallFooTracer() r=terrence r=smaug 2014-08-13 10:05:22 +01:00
L. David Baron a13b5c1919 Bug 996798 - Add a typedef to make it easier to change the size of nsWrapperCache/nsINode flags. r=bzbarsky 2014-06-18 17:07:26 -07:00
Birunthan Mohanathas 13a5c83bb6 Bug 1001966 - Part 3: Remove numbered NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE macros. r=smaug 2014-04-29 04:57:00 -04:00
Birunthan Mohanathas 90c3acbf65 Bug 1001966 - Part 1: Add variadic NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE macro. r=smaug 2014-04-29 04:56:00 -04:00
Terrence Cole 56f4a8bca3 Bug 807168 - Make JSTracer into a real C++ class and kill the macro accessors; r=jonco,mccr8
--HG--
rename : js/public/Tracer.h => js/public/TracingAPI.h
2014-04-11 15:19:05 -07:00
Boris Zbarsky 79dab91ff6 Bug 991742 part 8. Remove the "aScope" argument of WebIDL/nsWrapperCache WrapObject() methods. r=bholley
This patch was mostly generated with the following command:

find . -name "*.h" -o -name "*.cpp" | xargs sed -e '/WrapObject(JSContext/ {; N; s/\(WrapObject(JSContext *\* *a\{0,1\}[Cc]x\),\n\{0,1\} *JS::Handle<JSObject\*> a\{0,1\}[sS]cope/\1/ ; }' -i ""

and then reverting the changes that made to
dom/bindings/BindingUtils.h, since those WrapObject methods are not
the ones we're trying to change here, plus a bunch of manual fixups
for cases that this command did not catch (including all the callsites
of WrapObject()).
2014-04-08 18:27:18 -04:00
Peter Van der Beken 9bbd30a4ac Bug 990158 - Make inner windows use their wrapper cache. r=bz.
--HG--
extra : rebase_source : bc040c75280bb45ae7ab0ed302130ff5d7178153
2013-11-09 11:20:22 +01:00
Bobby Holley fbb9b62de8 Bug 825392 - Remove SOWs. r=bz 2014-03-19 13:35:45 -03:00
Olli Pettay fe989e3819 Bug 942240 - Improve the skippability of nsGlobalWindow, r=mccr8
--HG--
extra : rebase_source : ed7e687229a92075657d9b665fbc7af42d9eb5cc
2013-11-24 21:35:34 +02:00
Kyle Huey 020d8b6c36 Bug 928312: Convert the worker global object and all remaining EventTargets to new DOM bindings. r=bent,peterv,smaug 2013-11-05 22:16:26 +08:00
Benoit Jacob 6977a4abd2 Bug 912255 - traverse/unlink mDefaultVertexArray - r=smaug 2013-09-04 11:29:36 -04:00
Nicholas Nethercote 01c70c8c97 Bug 911020 - Introduce js/TypeDecls.h, which holds very commonly used type declarations from the JS engine. r=luke.
--HG--
extra : rebase_source : 008ef689989f93b46627b8be8608bdbc544ca3a2
2013-08-27 19:59:14 -07:00
Nicholas Nethercote 219bcb46a2 Bug 909178 (part 1) - Move |jsid| from jsapi.h into js/Id.h. r=luke.
--HG--
extra : rebase_source : b0d38093a9f40a532e73c2c30ae86b8970b814ac
2013-08-21 22:26:56 -07:00
Nicholas Nethercote 2585de9a07 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
Guillaume Abadie 166bf211b3 bug 903480 - [WebGL 2.0] implement TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN - r=jgilbert 2013-08-21 21:11:03 -04:00
Guillaume Abadie b34f7bed28 bug 903481_- step 3 - [WebGL 2.0] implement TRANSFORM_FEEDBACK_BUFFER - r=jgilbert 2013-08-20 11:36:20 -04:00
Ms2ger 50634577d5 Merge m-c to inbound. 2013-08-02 11:07:57 +02:00
Ms2ger 5dcc1ed0f0 Bug 886408 - Move nsContentUtils::ReleaseWrapper into nsWrapperCache; r=mccr8 2013-08-02 09:04:01 +02:00
Mike Hommey 2e729aa83d Bug 881323 - Re-implement CycleCollectorParticipant with actual vtables, with constexpr to avoid static initializers. r=mccr8 2013-08-02 10:29:05 +09:00
Ms2ger b7bef21f7f Bug 884268 - Part b: Move nsContentUtils::PreserveWrapper to nsWrapperCache; r=smaug 2013-06-23 09:15:42 +02:00
Ms2ger 4842331722 Bug 884268 - Part a: Move nsContentUtils::CheckCCWrapperTraversal to nsWrapperCache; r=smaug 2013-06-23 09:15:10 +02:00
Olli Pettay 09024c5489 Bug 847611 - Paris bindings for autogenerated events, r=peterv 2013-06-18 21:48:45 +03:00
Jon Coppeard a30b14261f Bug 877762 - GC: Post-barrier cycle collector participants - 7 Convert most JSObect to use Heap<T> (ex. XBL) r=bz 2013-06-18 11:00:38 +01:00
Jon Coppeard c06cd12b00 Bug 860573 - Part 1 - Store wrapper cache flags separately to the object pointer r=smaug 2013-06-08 09:53:21 +01:00
Jon Coppeard a07d2309af Bug 874691 - Make CC participant tracing indirect r=mccr8 r=smaug r=bz 2013-05-27 12:50:49 +01:00
Terrence Cole b6490325af Bug 777548 - Make non-cc-participant tracing indirect; r=smaug,billm,jst 2013-03-28 13:37:22 -07:00
Boris Zbarsky b834439797 Bug 864727 part 5. Make all the WrapObject methods take a handle for the scope object. r=ms2ger 2013-04-25 12:29:54 -04:00
Masatoshi Kimura 23ba391ec1 Bug 848339 - Remove the vestigial boolean outparam from nsWrapperCache::WrapObject. r=bz 2013-03-12 08:03:47 +09:00
Masatoshi Kimura 0b2426e59c Bug 841289 - Remove prefable option from WebIDL codegen. r=bz 2013-03-06 07:09:38 +09:00
Boris Zbarsky 9b45ffdc77 Bug 824589. Convert XULElement to WebIDL. r=peterv
The assertions in nsINode and nsWrapperCache are to eagerly catch
failures to override those methods.

The classinfo change for XULTreeBuilder is needed because one of those
is returned via an nsIXULTemplateBuilder attribute on XULElement.
Alternately, I could mark it notflattened in Bindings.conf, but Enn
said he prefers this anyway.

The change to the QI impl in BindingUtils is needed because when
XPConnect converts an IID from C++ to JS it makes is an nsJSID, not an
nsJSIID.  We've run into this before, sadly.

I removed "id" from nsIDOMXULElement because it's already on Element.
I suppose I could have left it there, but this seems cleaner.

The nsJSIID::HasInstance changes are needed to support XBL-implemented
interfaces.  Sadly, this does mean that if the underlying object QIs
to something but we didn't put those props on the WebIDL we'll end up
testing true for instanceof but not exposing the props.  I don't see
an obviously better way.  We should work on killing off uses of
"instanceof someinterface".

The browser.js change is needed to avoid throwing exceptions during
browser-chrome tests that are now getting reported because our
swapFrameLoaders is no longer an XPConnect method.
2013-01-29 12:51:55 -05:00
Boris Zbarsky f17cd371b2 Back out bug 824589 (rev 22695cac3896) on suspicion of Ts regression 2013-01-29 17:18:06 -05:00
Boris Zbarsky 1d5a36a375 Bug 824589. Convert XULElement to WebIDL. r=peterv
The assertions in nsINode and nsWrapperCache are to eagerly catch
failures to override those methods.

The classinfo change for XULTreeBuilder is needed because one of those
is returned via an nsIXULTemplateBuilder attribute on XULElement.
Alternately, I could mark it notflattened in Bindings.conf, but Enn
said he prefers this anyway.

The change to the QI impl in BindingUtils is needed because when
XPConnect converts an IID from C++ to JS it makes is an nsJSID, not an
nsJSIID.  We've run into this before, sadly.

I removed "id" from nsIDOMXULElement because it's already on Element.
I suppose I could have left it there, but this seems cleaner.

The nsJSIID::HasInstance changes are needed to support XBL-implemented
interfaces.  Sadly, this does mean that if the underlying object QIs
to something but we didn't put those props on the WebIDL we'll end up
testing true for instanceof but not exposing the props.  I don't see
an obviously better way.  We should work on killing off uses of
"instanceof someinterface".

The browser.js change is needed to avoid throwing exceptions during
browser-chrome tests that are now getting reported because our
swapFrameLoaders is no longer an XPConnect method.
2013-01-29 12:51:55 -05:00
Steve Fink 9effec722d Bug 828753 - jsid rooting, mostly in jsinfer.*. Also switch JSObject from struct to class. r=terrence 2012-12-31 12:40:21 -08:00
Steve Fink d8da3e7b9a Backed out changeset fce4e0f8a553 (bug 828753) for breaking windows warnings-as-errors (stop adding JSObject forward decls, please!) 2013-01-18 13:20:21 -08:00