Commit Graph

425 Commits

Author SHA1 Message Date
Daniel Holbert
d72b3ac614 Bug 1169086 followup: Add missing 'override' annotation to VerifyTraceProtoAndIfaceCacheCalledTracer::trace() method decl. rs=ehsan 2015-06-03 11:47:06 -07:00
Terrence Cole
948a1d6deb Bug 1169086 - Use virtual dispatch to implement callback tracer; r=jonco, r=mccr8 2015-05-28 16:35:08 -07:00
Terrence Cole
bab09d5096 Bug 1169791 - Strongly type GetTenuredGCThingZone; r=jonco, r=mccr8 2015-06-01 14:11:08 -07:00
Terrence Cole
7b1f37d23c Bug 1167453 - Rename JSGCTraceKind and make it a C++11 enum class; r=jonco 2015-05-22 10:40:24 -07:00
Terrence Cole
97c65455fd Bug 1164602 - Replace js::NullPtr and JS::NullPtr with nullptr_t; r=sfink 2015-05-13 14:07:34 -07:00
Steve Fink
290823d0e6 Bug 1162318 - Rooting hazard in WrapNativeParentHelper, r=peterv 2015-05-07 09:51:06 -07:00
Boris Zbarsky
2b2824bbc7 Bug 1160628. Speed up the URL constructor in the common case of no base URI. r=baku 2015-05-05 13:38:56 -04:00
Andrew McCreight
aeff7c99ee Bug 1152551, part 2 - Fix mode lines in dom/. r=jst 2015-05-03 15:32:37 -04:00
Boris Zbarsky
f3b244998d Bug 1155946 part 2. Add mayResolve methods to DOM classes with resolve hooks. r=peterv 2015-04-28 12:25:55 -04:00
Boris Zbarsky
7f61a6b625 Bug 1157898 part 5. Eliminate the remaining non-ErrorResult consumers of ErrorResult::ErrorCode and make it protected. r=peterv 2015-04-27 09:18:52 -04:00
Jim Blandy
a52b425862 Bug 1152577: Add 'aReason' argument to AutoEntryScript constructor, and provide plausible names for its instantiations. r=bholley 2015-04-08 21:23:48 -04:00
Boris Zbarsky
d03f59df28 Bug 1146333. Get rid of WrapCallThisValue and just use ToJSValue, now that we have it. r=peterv 2015-03-30 23:43:45 -04:00
L. David Baron
ee77e2eda3 Back out changeset 616e32e3da77 (bug 1146333) for widespread test bustage. 2015-03-30 21:52:07 -07:00
Boris Zbarsky
ce9a231f83 Bug 1146333. Get rid of WrapCallThisValue and just use ToJSValue, now that we have it. r=peterv 2015-03-30 23:43:45 -04:00
Cameron McCormack
3a8fd6b8cc Bug 1146234 - Allow non-object values to be used as the this value when invoking IDL callback functions. r=peterv 2015-03-28 11:44:29 +11:00
Jason Orendorff
d28f3fee83 Bug 1142784, part 2 - Change ProxyHandler::defineProperty() to make the desc argument a non-mutable handle. r=Waldo. 2015-02-17 11:58:43 -06:00
Terrence Cole
ef0a198902 Bug 1135985 - Split callback and marking tracers completely; r=jonco, r=mccr8 2015-02-25 13:11:37 -08:00
Phil Ringnalda
8a89e647fd Backed out 9 changesets (bug 1142775, bug 1139683, bug 1143810, bug 1142761, bug 1142784, bug 1142794, bug 1144819) for widespread bustage
CLOSED TREE

Backed out changeset 7613fc978d36 (bug 1142794)
Backed out changeset e5f0cb31263d (bug 1142784)
Backed out changeset dcd0af73ac84 (bug 1142784)
Backed out changeset 034f9c8e79ee (bug 1142784)
Backed out changeset ce0ee37e3ca9 (bug 1142775)
Backed out changeset 1519b8f2bbba (bug 1142761)
Backed out changeset 26fd55677841 (bug 1139683)
Backed out changeset 7ebc76a450c3 (bug 1144819)
Backed out changeset 92adb459d519 (bug 1143810)
2015-03-22 09:34:25 -07:00
Jason Orendorff
6b90d382df Bug 1142784, part 2 - Change ProxyHandler::defineProperty() to make the desc argument a non-mutable handle. r=Waldo. 2015-02-17 11:58:43 -06:00
Ehsan Akhgari
33bb32f549 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Boris Zbarsky
54c64f20a9 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
Boris Zbarsky
50b622a067 Bug 1117172 part 2. Change the non-wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
The only manual changes here are to BindingUtils.h, Codegen.py, and
StructuredClone.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/WrapObject\((JSContext *\* *(?:aCx|cx)),(\s*)(JS::MutableHandle<JSObject\*> aReflector)/WrapObject(\1,\2JS::Handle<JSObject*> aGivenProto,\2\3/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx)), this, aReflector/\1, this, aGivenProto, aReflector/'
2015-03-19 10:13:32 -04:00
Andrew McCreight
c34850707a Bug 1137536, part 3 - Move the top level DeferredFinalize functions into their own file. r=smaug 2015-03-18 11:36:03 -07:00
Andrew McCreight
0f7082e12b Bug 1137536, part 1 - Move DeferredFinalize out of the cyclecollector namespace. r=smaug 2015-03-18 11:36:03 -07:00
Andrew McCreight
cf66099283 Bug 1114804 - Make ISupports use the standard deferred finalizer code. r=peterv 2015-03-10 08:35:47 -07:00
Jason Orendorff
f43c96af4d Bug 1113369, part 3 - [[DefineOwnProperty]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
Add an ObjectOpResult out-param for DefineProperty functions everywhere. We leave a few js::DefineProperty() convenience functions with no *result out-param. These have strict behavior: that is, they automatically check the result and throw if it is false. In bug 1125624 these strict signatures may end up being called DefinePropertyOrThrow, as that is what the spec calls it.
2015-01-30 11:37:07 -06:00
Boris Zbarsky
f83746f1d1 Bug 1139604. Remove incorrect assert from ArrayCache::EntrySlotMustExist and the unused GetUnforgeableHolder function. r=petev 2015-03-06 16:33:30 -05:00
Boris Zbarsky
458e969f4e Bug 1139964 part 1. Factor out the guts of BackstagePass::Resolve and BackstagePass::Enumerate to allow reuse for other globals that want to opt in to Exposed=System WebIDL annotations. r=smaug 2015-03-06 01:08:06 -05:00
Eddy Bruël
a471b66362 Bug 1092102 - Implement a WorkerDebuggerGlobalScope;r=khuey 2015-03-04 00:51:53 +01:00
Boris Zbarsky
fc656d4547 Bug 928336. Make defining unforgeable properties on objects faster by just copying them from an unforgeable holder object. r=peterv 2015-03-03 21:01:58 -05:00
Josh Matthews
71fc1b8529 Bug 1137250 - Fix incorrect initialization of Request object. r=bz 2015-02-26 15:40:00 -05:00
Boris Zbarsky
29c02a7c07 Bug 1136925 part 3. Stop passing parents to js::NewProxyObject. r=waldo 2015-02-26 15:58:59 -05:00
Wes Kocher
bc62dd3b33 Backed out 4 changesets (bug 1136925) for potentially busting m-e10s-dt on a CLOSED TREE
Backed out changeset 331761aaae22 (bug 1136925)
Backed out changeset 2faa0e91fe23 (bug 1136925)
Backed out changeset a00f2530c911 (bug 1136925)
Backed out changeset d5e658bc0792 (bug 1136925)
2015-02-26 23:17:34 -08:00
Boris Zbarsky
e8c2fb81d9 Bug 1136925 part 3. Stop passing parents to js::NewProxyObject. r=waldo 2015-02-26 15:58:59 -05:00
Boris Zbarsky
cd3bf1d33b Bug 1135810. Add more explicit checks for whether a descriptor wants Xrays or not instead of assuming that Xrays are desired if and only if descriptor.workers is false. r=peterv 2015-02-26 09:40:08 -05:00
Boris Zbarsky
23f9262764 Bug 1136292 part 1. Stop passing a parent to BindingJSObjectCreator methods, since it's always the global anyway. r=peterv 2015-02-26 09:40:07 -05:00
Boris Zbarsky
0f9ff716f0 Bug 1135151. Add a WrapNativeParent specialization for the nsIGlobalObject case, and make Event return nsIGlobalObject as its parent object. r=smaug 2015-02-23 10:03:40 -05:00
Boris Zbarsky
3943fd8cac Bug 742194 part 1. Add support for throwing uncatchable exceptions to Web IDL bindings. People keep asking for this. r=khuey 2015-02-20 23:58:36 -05:00
Dhi Aurrahman
e0a3d64aa1 Bug 1125766 - Throw proper error types for TextEncoder(), TextDecoder() and TextDecoder.decode(). r=bz 2015-02-04 18:46:26 +07:00
Tom Schuster
3374698e65 Bug 1127443 - Move some JS_NewObject callers to JS_NewObjectWithGiveProto 2015-01-31 16:18:51 +01:00
Jeff Walden
d2d785f69e Bug 1112774 - Add a raft of other conversion methods to js/public/Conversions.h past just JS::ToObject. r=jorendorff
--HG--
extra : rebase_source : 5d04a08a8fd51952283ce2a819149da035311b59
2014-12-17 13:50:20 -08:00
Ehsan Akhgari
95c577a8a5 Bug 1069719 - Abort the execution of scripts when a prerendered page calls an IDL blacklisted function; r=bzbarsky 2015-01-26 11:02:56 -05:00
Peter Van der Beken
e08d1eb1bb Bug 1096328 - Remove nativeOwnership from Bindings.conf, make rooting analysis happy. r=bz.
--HG--
extra : rebase_source : 54a1e408aec6c7485152f18693047b2992251aff
2015-01-08 22:56:42 +01:00
Peter Van der Beken
9c3cff2e39 Bug 1096328 - Remove nativeOwnership from Bindings.conf, autodetect the right smart pointer for owned and refcounted objects. r=bz.
--HG--
extra : rebase_source : ef48d9f72bdbc4891206841d5c8f26fd5140ac3d
2014-11-01 15:08:00 +01:00
Peter Van der Beken
a5eb91a8db Bug 1096328 - Remove nativeOwnership from Bindings.conf, make WrapNewBindingNonWrapperCachedObject work for owned objects. r=bz.
--HG--
extra : rebase_source : 5c8df69bacf2fbe00dfbb864100144850c75c10a
2014-11-01 15:00:47 +01:00
Peter Van der Beken
bcde9e12f6 Bug 1096328 - Remove nativeOwnership from Bindings.conf, make the WrapObject signature for non-refcounted objects the same as for refcounted objects. r=bz.
* * *
[mq]: owned_fold.patch

--HG--
extra : rebase_source : 1eec318046dae59e740ee5409a97c7cbfd88c9b1
2014-11-01 15:00:28 +01:00
Peter Van der Beken
408543d91c Bug 1096328 - Remove nativeOwnership from Bindings.conf, templatize deferred finalization. r=bz.
--HG--
extra : rebase_source : 2486e80073d49ffc5ed93676382846fe7c87bd64
2014-11-01 14:48:19 +01:00
Peter Van der Beken
5bb3cd6c05 Bug 1096328 - Remove nativeOwnership from Bindings.conf, add template to detect refcounted classes. r=bz.
--HG--
extra : rebase_source : 48ddff175ca379a0fcda1511c822f920246a04bc
2014-11-01 14:10:59 +01:00
Peter Van der Beken
6ac5993e67 Bug 1096328 - Remove nativeOwnership from Bindings.conf, reorganize checks for members in BindingUtils.h. r=bz.
--HG--
extra : rebase_source : 009f3303f735b988d455850007072f3a39a76782
2014-11-01 14:04:43 +01:00
Ehsan Akhgari
b6e35bb4b4 Bug 1118486 - Part 1: Use = delete instead of MOZ_DELETE directly; r=Waldo
Most of this patch (with the exception of dom/bindings/Codegen.py) was
generated by the following bash script:

#!/bin/bash

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "*/.git*" \
       ! -wholename "obj-*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_DELETE '= delete'
2015-01-08 23:19:05 -05:00