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

1677 Коммитов

Автор SHA1 Сообщение Дата
Boris Zbarsky 6c78cc893a Bug 1323721 part 11. Make isInterface and isGeckoInterface test false for the isPromise() case. r=qdot 2016-12-19 15:38:44 -08:00
Boris Zbarsky d954b293d1 Bug 1323721 part 10. Move Promise arg-type computation for callbacks out of the isGeckoInterface section. r=qdot 2016-12-19 15:38:43 -08:00
Boris Zbarsky f0b430a1bb Bug 1323721 part 9. Move Promise JS-to-native conversion out of the isGeckoInterface section. r=qdot 2016-12-19 15:38:43 -08:00
Boris Zbarsky 193bf9cd4c Bug 1323721 part 8. Remove the codegen hacks for calling Promise methods and constructors now that we don't do that anymore. r=till 2016-12-19 15:38:43 -08:00
Boris Zbarsky 865e7c42eb Bug 1323721 part 5. Move Promise native-to-JS conversion out of the isGeckoInterface section. r=qdot 2016-12-19 15:38:43 -08:00
Boris Zbarsky d68defe92d Bug 1324044. Add fingerprinting resistance in GetSupportedNames in nsMimeTypeArray and nsPluginArray. r=qdot 2016-12-17 00:25:52 -05:00
Boris Zbarsky e36aa537d8 Bug 1324035 part 1. Fix codegen to pass a CallerType to Length() calls that are generated for indexed getters if the indexed getter itself needs a CallerType. r=qdot 2016-12-17 00:25:52 -05:00
Boris Zbarsky 90075801ac Bug 1323930. Align the handling of Promise return values from callbacks with the current wording of the WebIDL spec. r=bholley 2016-12-16 14:08:40 -05:00
Edgar Chen 881cbd80bd Bug 1274159 - Part 2-2: Support HTMLConstructor WebIDL extended attribute for custom elements; r=bz,wchen
MozReview-Commit-ID: 6egmavfTmFT
2016-11-17 23:31:50 +08:00
Till Schneidereit 95b8398292 Bug 1322920 - Remove DOM Promise implementation. r=bz
MozReview-Commit-ID: 1zzd0x2LNNb
2016-12-14 17:11:48 +01:00
Sebastian Hengst 5e1b29b9c0 Backed out changeset f2a5fc3e8c4e (bug 1274159) 2016-12-14 13:27:22 +01:00
Edgar Chen da0139302c Bug 1274159 - Part 2-2: Support HTMLConstructor WebIDL extended attribute for custom elements; r=bz,wchen
MozReview-Commit-ID: 6egmavfTmFT

--HG--
extra : rebase_source : 07436a4b8dfc1960f0cc24b67b8cc5d1e2ffd5cd
2016-11-17 23:31:50 +08:00
Andi-Bogdan Postelnicu 66a38349d4 Bug 1307142 - correlate MOZ_ASSERT_IF with logic from IsConvertibleToDictionary. r=peterv
MozReview-Commit-ID: 9cPblJOOf8U

--HG--
extra : rebase_source : 6b653ab6114624044799d2ac20e824a9c8852ee8
2016-10-03 18:40:36 +03:00
Boris Zbarsky 679c9e41a6 Bug 1321835. Assert that the givenProto argument for binding wrap methods is in the right compartment. r=peterv 2016-12-08 16:41:45 -10:00
Boris Zbarsky 099ef6f007 Bug 1315135. Remove the RegExp (and some Date) special casing from our dictionary conversions and Web IDL overload resolution. r=peterv 2016-11-23 22:57:29 -05:00
Boris Zbarsky 1e3ce6af00 Bug 1316616 part 3. Use the new CallerType-getting API in a few places to demonstrate how it works. r=bholley 2016-11-18 16:13:07 -05:00
Boris Zbarsky 282d7c0569 Bug 1316619. Add a [NeedsCallerType] WebIDL annotation. r=bholley 2016-11-11 16:09:05 -05:00
Andrea Marchesini 8524257019 Bug 1290021 - Implement a prototype version of Houdini "Worklets Level 1" spec - part 2 - WorkletGlobalScope, r=smaug 2016-11-06 09:54:29 +01:00
Boris Zbarsky 1ef30fd1e4 Bug 1021289 another followup. Make sure that we don't leave an uninitialized opresult when deleting things on DOM objects via Xrays. r=bustage and CLOSED TREE 2016-11-04 15:58:32 -04:00
Boris Zbarsky 598f3f4180 Bug 1021289 part 4. Implement support for WebIDL deleters over Xrays. r=peterv 2016-11-04 12:41:26 -04:00
Boris Zbarsky 955f4ccd70 Bug 1021289 part 3. Factor getDeleterBody our of CGDOMJSProxyHandler_delete so we can use it in a new Xray hook too. r=peterv 2016-11-04 12:41:26 -04:00
Boris Zbarsky d5fd55b992 Bug 1021289 part 2. Remove support for indexed deleters, since they're gone from the spec. r=peterv 2016-11-04 12:41:26 -04:00
Jeff Walden bc403f8efa Bug 1306540 - FindEnumStringIndex should follow JSAPI interface conventions. r=bz
--HG--
extra : rebase_source : 68b64ef7dc44e52dfdf64c527ab78f8b7ab14d85
2016-09-30 13:11:41 -07:00
Jon Coppeard 529ca3aff2 Bug 1308919 - Fix typo in comments r=bz on a CLOSED TREE 2016-10-14 10:24:56 +01:00
Jon Coppeard 6ca64e3652 Bug 1308919 - Don't make Handles to Heap<T> as it avoids the read barrier r=bz 2016-10-14 09:45:28 +01:00
Boris Zbarsky e158454b4e Bug 1309970. Add a way to return frozen arrays to chrome callers with a .contains defined on them, returning the same value as .includes. r=qdot 2016-10-13 22:14:26 -04:00
Boris Zbarsky 4d59f9aa76 Bug 1309239. Fix the codegen for a cached DOM getter to not worry about Xrays if the interface doesn't want Xrays (i.e. is not mainthread-exposed). r=baku 2016-10-11 10:32:37 -04:00
Boris Zbarsky 3f10f5ed57 Bug 1308287 part 1. Change [NeedsSubjectPrincipal] to only do the Maybe thing for interfaces that can be exposed to workers. r=baku
The idea is to not make consumers think about whether the principal exists or
not when the caller knows for sure that it does.

The substantive changes are in dom/bindings, nsHTMLDocument::SetDesignMode, and
around the CanUseStorage bits.  Everything else is pretty mechanical.
2016-10-10 21:07:48 -04:00
Boris Zbarsky 13514334ba Bug 946906 part 8. When getting a cacheable property off a DOM Xray, cache it on the Xray's expando object. r=bholley 2016-10-10 18:16:26 -04:00
Boris Zbarsky fba67a8141 Bug 946906 part 6. Clear the relevant slots on Xray expandos when clearing cached slots on a DOM object. r=bholley 2016-10-10 18:16:26 -04:00
Boris Zbarsky bb0814b5d3 Bug 946906 part 4. Codegen Xray expando JSClasses for DOM objects with [Cached] or [StoreInSlot] members. r=bholley 2016-10-10 18:16:26 -04:00
Stone Shih d76caea5e4 Bug 1292063 - Part 1: Add Event.composed. r=smaug
--HG--
extra : rebase_source : 105f9cfddb083d48d3da25fa13bf9a3b4c2637f6
2016-08-31 11:16:11 +08:00
Tooru Fujisawa d7c8c69a03 Bug 1290337 - Part 17: Replace Value parameter to const Value& in dom/bindings. r=smaug 2016-09-11 18:15:24 +09:00
Tooru Fujisawa e0c7801dc3 Bug 1290337 - Part 13: Replace Value parameter to const Value& in finalizeInBackground. r=sfink 2016-09-11 18:15:23 +09:00
Andrea Marchesini 47e3640d27 Bug 1297393 - Make passing of subject principals to webidl entry points explicit - part 1 - WebIDL [NeedsSubjectPrincipal], r=ehsan, r=peterv 2016-09-29 08:55:19 +02:00
Tooru Fujisawa 6d493d48ec Bug 1289050 - Part 1: Use ASCII variant of JS_ReportError in simple case. r=jwalden 2016-08-14 20:39:28 +09:00
Andi-Bogdan Postelnicu 0a7e6c2c05 Bug 1302442 - Add ignore-initialization-check annotation to class member variables constructed by Codegen. r=peterv
MozReview-Commit-ID: 2vd6EELGSSj

--HG--
extra : rebase_source : 810b61ea983b8a2636130f488c13b1ee61996aef
2016-09-20 15:11:08 +03:00
Boris Zbarsky 87d24a4a1d Bug 1297304. Fix our named property DOM proxy code to handle deletion correctly when expandos are involved. r=peterv 2016-09-20 13:24:34 +01:00
Boris Zbarsky f671eef0e3 Bug 1303099. LenientFloat handling should not prevent all arguments being processed; instead it should just cause an early return right after argument processing. r=qdot 2016-09-15 17:10:59 -04:00
Carsten "Tomcat" Book 7c6c7db247 Merge mozilla-central to autoland 2016-09-07 17:26:11 +02:00
Andi-Bogdan Postelnicu 1ccbe1644f Bug 1301033 - add assert cx on generated code in order to prevent false-positive from static analysis tools. r=baku
MozReview-Commit-ID: ELTP8E3zRNf

--HG--
extra : rebase_source : e50e2bbb7414b44a38c4bfbbad976ad65c516394
2016-09-07 15:32:02 +03:00
Boris Zbarsky 40a43f8a00 Bug 1299306 part 2. Call JS_SetImmutablePrototype on Location instances to make their prototype immutable in a more spec-compliant way. r=peterv 2016-09-02 17:55:38 -04:00
Boris Zbarsky 8aef9d0ce9 Bug 1299306 part 1. Refactor the error handling in CGWrapNonWrapperCacheMethod and CGWrapWithCacheMethod to have less duplication. r=peterv 2016-09-02 17:55:38 -04:00
Boris Zbarsky 10a9e4c620 Bug 1297717. Stop using an unforgeable holder for global objects with unforgeable properties, since it's just pure slowdown in that case. r=peterv 2016-09-02 17:55:38 -04:00
Tom Schuster 55a65363a9 Bug 1299321 - Make DOM/Xray handle string values in JSPropertySpec. r=peterv 2016-09-02 18:39:50 +02:00
John Dai afa50be601 Bug 1294100 - Part 3: Modify Codegen to generate including FakeString's binding files and fix build errors. r=bz
--HG--
rename : dom/bindings/BindingUtils.h => dom/bindings/FakeString.h
2016-09-01 18:10:54 +08:00
Boris Zbarsky 37ce88ab1c Bug 1298410. Remove support for IDL arrays, since those are not a thing anymore. r=peterv 2016-09-01 21:31:23 -04:00
Boris Zbarsky e8c8715cfb Bug 1297756 part 2. Allow specifying a default value for a union containing an enum. r=mystor 2016-08-30 12:55:17 -04:00
Michael Layzell 164944c0c0 Bug 1292293 - Part 1: Update the WebIDL Parser to allow default values for ByteString, r=bz
--HG--
extra : rebase_source : 8d031a5a34e4bb75a3432e23e625370cbcea0dae
2016-08-05 17:46:54 -04:00
Jon Coppeard d1435a2a8c Bug 1296688 - Add JSCLASS_FOREGROUND_FINALIZE flag r=sfink r=smaug 2016-08-24 14:18:10 +01:00
Boris Zbarsky d7821950f4 Bug 1278583 part 5. Switch DOM code from using hasInstance class hooks to using Symbol.hasInstance. r=peterv 2016-08-03 18:32:07 -07:00
Boris Zbarsky ba5962ed70 Bug 1278583 part 4. Rip out the now-unused construct hook holder bits in bindings. r=peterv 2016-08-03 18:32:06 -07:00
Boris Zbarsky ab204ba73e Bug 1278583 part 3. Make static stuff (static attributes, methods, constants) actually work on globals. r=peterv 2016-08-03 18:32:06 -07:00
Boris Zbarsky 30fb9d7bd3 Bug 1290636. Fix some bugs in the way single-type (value) iterators are hooked up in the Web IDL bindings. r=qdot
There were two issues:

1) The keys/entries/values/forEach properties were being added no matater what
the value of the 'unforgeable' boolean was.  So we ended up spitting out
unforgeable versions of those, and this confused some Xray cases.

2) The number of args listed for forEach was wrong, which hit assertions in the
JS engine because the same self-hosted function was being instantiated with
different numbers of args from different places.
2016-07-30 01:00:12 -04:00
Boris Zbarsky 8617edc967 Bug 1288791 part 3. Ensure that FindAssociatedGlobal never returns a gray global. r=bkelly 2016-07-27 11:05:36 -04:00
Boris Zbarsky 5b840d9b96 Bug 1288791 part 2. Rename WrapNativeParent to FindAssociatedGlobal and update it to actually do that. r=bkelly 2016-07-27 11:05:36 -04:00
Boris Zbarsky 8e34004cf1 Bug 1288791 part 1. Rename the GetParentObject template bits to make it clearer what they're really doing: finding the associated global for an object's native. r=bkelly 2016-07-27 11:05:36 -04:00
Boris Zbarsky f65cc2b16c Bug 1289467 part 4. Make ForwardDeclarationBuilder error out if asked to forward-declare a templated type instead of spitting out nonsense that doesn't compile. r=qdot 2016-07-27 11:05:36 -04:00
Boris Zbarsky d39f976400 Bug 1289467 part 3. Skip forward-declaring types used by methods/attributes on maplikes/setlikes/iterables that we auto-generate an implementation for. r=qdot 2016-07-27 11:05:36 -04:00
Boris Zbarsky f9765094cb Bug 1289467 part 2. Skip example codegen for methods/attributes on maplikes/setlikes/iterables that we auto-generate an implementation for. r=qdot 2016-07-27 11:05:35 -04:00
Boris Zbarsky 25504e4a0d Bug 1288581 part 1. Start tracing the expando object, if any, inside the ExpandoAndGeneration of a shadowing DOM proxy from that proxy's trace hook. r=smaug 2016-07-22 16:19:52 -04:00
Carsten "Tomcat" Book a0992595d6 merge mozilla-inbound to mozilla-central a=merge 2016-07-17 10:08:08 +02:00
Boris Zbarsky de3dccf7da Bug 933378 part 2. Introduce a FastErrorResult class that bindings can use internally instead of ErrorResult. r=bkelly 2016-07-15 22:35:13 -04:00
Carsten "Tomcat" Book b2d35d7ca3 Backed out changeset 1c2bd3bdebd6 (bug 933378) 2016-07-16 10:03:10 +02:00
Boris Zbarsky 38d0ae9c0c Bug 933378 part 2. Introduce a FastErrorResult class that bindings can use internally instead of ErrorResult. r=bkelly 2016-07-15 22:35:13 -04:00
Alexandre Lissy 6798f02654 Bug 1286530 - Clean AvailableIn, CheckAnyPermissions and CheckAllPermissions from WebIDL r=bz,fabrice
MozReview-Commit-ID: 6EQfBM09xUE

--HG--
rename : dom/contacts/tests/test_contacts_cache.xul => dom/contacts/tests/test_contacts_a_cache.xul
rename : dom/contacts/tests/test_contacts_shutdown.xul => dom/contacts/tests/test_contacts_a_shutdown.xul
rename : dom/contacts/tests/test_contacts_upgrade.xul => dom/contacts/tests/test_contacts_a_upgrade.xul
rename : dom/mobilemessage/tests/mochitest/mochitest.ini => dom/mobilemessage/tests/mochitest/chrome.ini
extra : rebase_source : 5f708f2a927fafff66626367ef07080785ba9f55
2016-04-21 15:48:59 +02:00
Andrew McCreight 1d1ce1020c Bug 1283636 - Use CallbackPreserveColor() less. r=bz
Some places call CallbackPreserveColor() because they know the object
must have already been marked black. This patch replaces those calls
with a new function CallbackKnownNotGray() which documents and
dynamically checks this assumption.
2016-07-13 13:28:00 +02:00
Boris Zbarsky efc4dcf284 Bug 1275315 part 2. Use the new Realm getters in binding code. r=peterv 2016-07-09 00:19:52 -04:00
Chris Peterson 43c2748f66 Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
Boris Zbarsky 8c00d2132b Bug 1257037 part 14. Remove the now-unused skipGen bits from binding code. r=khuey 2016-07-08 00:37:55 -04:00
Boris Zbarsky d959247e48 Bug 1257037 part 13. Get rid of the concept of worker vs non-worker descriptors. r=khuey 2016-07-08 00:37:55 -04:00
Boris Zbarsky 4813a875a7 Bug 1257037 part 12. Simplify CGRegisterWorkerBindings now that there are no more worker descriptors. r=khuey 2016-07-08 00:37:55 -04:00
Boris Zbarsky f3fde63185 Bug 1257037 part 11. Get rid of getRelevantProviders, since all the places that use it have a Configuration. r=khuey 2016-07-08 00:37:55 -04:00
Boris Zbarsky 584c6019b6 Bug 1257037 part 10. Store only one descriptor per interface name in the configuration. r=khuey 2016-07-08 00:37:54 -04:00
Boris Zbarsky 67d015d59c Bug 1257037 part 9. Get rid of the concept of mainthread callbacks or worker callbacks; just codegen all the callbacks. r=khuey 2016-07-08 00:37:54 -04:00
Boris Zbarsky ca29b3c56a Bug 1257037 part 8. Remove Configuration.getDescriptorProvider. r=khuey 2016-07-08 00:37:54 -04:00
Boris Zbarsky fc26f41e40 Bug 1257037 part 6. Simplify the toBindingNamespace function now that there are no worker bindings. r=khuey 2016-07-08 00:37:54 -04:00
Boris Zbarsky e36bd30afb Bug 1257037 part 5. Remove remaining checks for worker descriptors from Codegen.py. r=khuey 2016-07-08 00:37:54 -04:00
Boris Zbarsky c65c962762 Bug 1257037 part 4. Remove the worker-only XXX comments from CGWrapGlobalMethod, since we never have worker descriptors for globals anyway. r=khuey 2016-07-08 00:37:54 -04:00
Boris Zbarsky 69caa834f3 Bug 1257037 part 3. Remove filteredSignatures, since it's a no-op unless we're dealing with a worker descriptor. r=khuey 2016-07-08 00:37:54 -04:00
Boris Zbarsky 1dbb14fbc5 Bug 1257037 part 2. Remove isMaybeExposedIn, since it always returns true now. r=khuey 2016-07-08 00:37:53 -04:00
Boris Zbarsky 69f3736864 Bug 1257037 part 1. Remove the worker-descriptor-related complexity in getControllingCondition, since workerDesc.workers never tests true anymore. r=khuey 2016-07-08 00:37:53 -04:00
Boris Zbarsky 4eb82c0b30 Bug 1281071. Be a bit more careful with our cross-origin-accessible stuff on windows. r=bholley 2016-06-23 19:39:53 -04:00
Boris Zbarsky 0f8a633cfe Bug 1277401 part 5. Change dictionary codegen to output Func stuff as needed. r=peterv 2016-06-07 10:34:54 -04:00
Boris Zbarsky 7a576733a8 Bug 1277401 part 4. Fix up includes for dictionary members with [Func] on them. r=peterv 2016-06-07 10:34:54 -04:00
Boris Zbarsky d3289bfcf8 Bug 1277401 part 2. Fix up includes for dictionaries that have [ChromeOnly] members. r=peterv 2016-06-07 10:34:54 -04:00
Boris Zbarsky df8eeb6742 Bug 1277401 part 1. Factor out the condition list generation for pref/func so we can reuse it for dictionary members. r=peterv 2016-06-07 10:34:53 -04:00
Andrea Marchesini be787b709b Bug 989619 - patch 1 - Codegen should allow static methods with a reserved C++ keywords as the name, r=peterv 2016-06-04 09:31:44 +02:00
Cameron McCormack e3ca5e1f4a Bug 1141916 - Part 2: Support [ChromeOnly] on dictionary members. r=peterv 2016-06-02 12:14:24 -04:00
Boris Zbarsky 783e8cc098 Bug 1270601 part 3. Add a way to annotate and IDL namespace as needing a new plain object as its prototype, because using Object.prototype as the prototype of 'console' is not web-compatible. r=peterv 2016-06-02 10:34:39 -04:00
Boris Zbarsky 98b4dca6e9 Bug 1270601 part 2. Add codegen support for IDL namespaces. r=peterv 2016-06-02 10:34:39 -04:00
Olli Pettay b6345324c6 Bug 1276424 - EventListenerWasAdded/Remove doesn't work in JS implemented webidl because of missing 'override', r=bz
--HG--
extra : rebase_source : 9bc0109e898b462b500fb40da836c0fb8660b18e
2016-05-31 23:05:55 +03:00
Boris Zbarsky bfc23d53a8 Bug 1273661 part 3. Add the codegen bits and Trace implementation to allow Web IDL callbacks to not have to HoldJSObjects until the bindings have determined that someone is actually holding on to the callback object. r=smaug,terrence 2016-05-18 12:23:35 -04:00
Boris Zbarsky 61b3aedfa3 Backed out changesets bdb5b50fd858, 74dbcb56456d, 8f319062be85, 9806d7a88802, c08f417d85fd (bug 1273661) for build bustage and CLOSED TREE. 2016-05-19 00:26:24 -04:00
Boris Zbarsky 1a82ba56e3 Bug 1273661 followup. We need different RootedCallback destructors for the OwningNonNull and RefPtr cases, unfortuntately. r=CLOSED TREE 2016-05-18 23:38:23 -04:00
Boris Zbarsky 893059f88a Bug 1273661 part 3. Add the codegen bits and Trace implementation to allow Web IDL callbacks to not have to HoldJSObjects until the bindings have determined that someone is actually holding on to the callback object. r=smaug,terrence 2016-05-18 12:23:35 -04:00
Jonathan Watt 1f58b22c60 Bug 177957, part 3 - Make the WebIDL code generator support the [SecureContext] extended attribute. r=bz
MozReview-Commit-ID: 3O3V4MTgLuR
2016-05-16 10:04:38 +01:00
Xidorn Quan 114633161f Bug 1268798 part 3 - Add LenientSetter extended attribute. r=khuey
MozReview-Commit-ID: 61wybyS36KE

--HG--
extra : source : 98e1ae5fa2ddf5308fba6e09b47cbb831c60ac8a
2016-05-12 10:28:56 +10:00
Peter Van der Beken 5c9bb43e9d Bug 1267186 - Split lookup of WebIDL DOM class names from lookup of DOMCI DOM class names. r=bz.
--HG--
extra : rebase_source : 073ec0857b63df3e2ecef43ef3b982f2e1be2d24
2016-05-09 17:08:31 +02:00
Boris Zbarsky 59de5a530f Bug 1270349 part 5. Use LegacyUnenumerableNamedProperties instead of passing flags to GetSupportedNames to determine whether named props on DOM proxies should be reflected in ownPropertyKeys. r=peterv 2016-05-09 22:25:40 -04:00
Boris Zbarsky 76180fb5a7 Bug 1270349 part 4. Use LegacyUnenumerableNamedProperties instead of NameIsEnumerable() calls to determine whether named props on DOM proxies should be enumerable. r=peterv 2016-05-09 22:25:40 -04:00
Carsten "Tomcat" Book 98f0a3271a Backed out changeset d385df62c0e7 (bug 1267186) for hazard failures 2016-05-09 13:40:01 +02:00
Peter Van der Beken b6c1e074c2 Bug 1267186 - Split lookup of WebIDL DOM class names from lookup of DOMCI DOM class names. r=bz.
--HG--
extra : rebase_source : 324cf124544c0ffe2ad2ceccbed397d5069d1435
2016-03-09 15:48:12 +01:00
Sebastian Hengst faffe478f6 Backed out changeset f9d3ea58c195 (bug 1267186) for static bustage in WebIDLGlobalNameHash.cpp. r=backout 2016-05-06 18:11:03 +02:00
Peter Van der Beken 827ee394ba Bug 1267186 - Split lookup of WebIDL DOM class names from lookup of DOMCI DOM class names. r=bz.
--HG--
extra : rebase_source : 5578057666186f58e434767af84fbfeac0cbdc3c
2016-03-09 15:48:12 +01:00
Boris Zbarsky 049c40b0ef Bug 1269400. Provide better error messages for the cases when a CallSetup fails and we hence fail to execute a Web IDL callback. r=bholley 2016-05-04 13:59:42 -04:00
Jeff Walden 3017794ba8 Bug 888969 - Permit a cyclic [[Prototype]] chain to be created through a Location object. r=bz, r=efaust
--HG--
extra : rebase_source : dca3ecec791ecca5a2512a789c756bb4af1ca895
2016-04-29 19:59:40 -07:00
Boris Zbarsky 2f533f506d Bug 1265770. Don't try to get a prototype for the interface object for an interface that's [NoInterfaceObject], since it's just unnecessary work that can't even be done at all in some cases (e.g. when the parent interface is also [NoInterfaceObject]). r=peterv 2016-04-20 18:04:56 -04:00
Nicholas Nethercote 60dcde7875 Bug 1261723 (part 2) - Separate class ops from js::Class. code=njn,h4writer. r=efaust,bz.
js::Class op are often all null. And when they're not all null, they're often
duplicated among classes. By pulling them out into their own struct, and using a
(possibly null) pointer in js::Class, we can save 114 KiB per process on
64-bit, and half that on 32-bit.
* * *
imported patch separate-ClassOps-2

--HG--
extra : rebase_source : bd751bf247e9491c1966a123dbeffa573657dfb1
2016-04-01 11:00:01 +11:00
Peter Van der Beken f781f02ccd Bug 1245650 - remove JavaScript-navigator-property category support. r=bz.
Generate normal properties with getters for things marked as NavigatorProperty,
instead of defining these from a resolve hook.
2016-02-05 20:20:08 +01:00
Nicholas Nethercote 0faa7a06ba Bug 1261720 (part 2) - Move ClassExtension::isWrappedNative into js::Class::flags. r=jorendorff.
This saves 10 KiB of static data on 64-bit, and half that on 32-bit.

--HG--
extra : rebase_source : f0e9c5cdba7f5a71cda046152691de6a5184a223
2016-04-04 08:47:15 +10:00
Nicholas Nethercote f7dab46ae8 Bug 1261720 (part 1) - Separate js::ClassExtension from js::Class. r=jorendorff,bz.
js::ClassExtension is often all null. When it's not all null, it's often
duplicated among classes. By pulling it out into its own struct, and using a
(possibly null) pointer in js::Class, we can save 17 KiB per process on
64-bit, and half that on 32-bit.

--HG--
extra : rebase_source : eb78ade09ce268e886d091f6cbc38d7e5e912527
2016-04-04 08:45:07 +10:00
Boris Zbarsky 80d8bedf90 Bug 1246153 part 3. Use the new clean global setup for doing from-JSON creation of dictionaries. r=bholley 2016-04-04 12:29:18 -04:00
Boris Zbarsky 190e8db66b Bug 1246153 part 1. Restrict initialization of dictionaries from JSON to dictionaries that can actually be represented in JSON. r=bholley 2016-04-04 12:16:13 -04:00
Nicholas Nethercote 358a6071d9 Bug 1260653 - Shrink NativeProperties. r=bz.
This patch makes NativeProperties variable-length and reduces static data by
110,336 bytes on 64-bit, and half that on 32-bit.

MozReview-Commit-ID: 2etZ5AnEhgO

--HG--
extra : rebase_source : 6a167b64df7da3c6940114782fe08337f04a694d
2016-03-31 09:57:20 +11:00
Nicholas Nethercote e114b226dc Bug 1259194 (part 4) - Separate js::ObjectOps from js::Class. r=efaust,mrbkap,bz.
js::ObjectOps is often all null. When it's not all null, it's often duplicated
many times among classes. By pulling it out into its own struct, and using a
(possibly null) pointer in js::Class, we can save 208 KiB per process on
64-bit, and half that on 32-bit.

--HG--
extra : rebase_source : 5be8fe45f652392571b8a6d7b63777cbafba6ae4
2016-03-24 07:00:29 +11:00
Boris Zbarsky 4622df74e0 Bug 1104955 part 3. Pass our unscopable names to CreateInterfaceObjects and have it define the right thing on the prototype. r=khuey 2016-03-29 15:50:38 -04:00
Boris Zbarsky 99babb71e8 Bug 1104955 part 2. Make codegen output a list of unscopable names that we can then pass to CreateInterfaceObjects. r=khuey
Note that this does not take into account the exposed/enabled state of the
relevant properties.  This should be OK, I hope.  Taking that state into account
would be rather annoying, unfortunately.  We could make codegen fail if
something is conditionally exposed and unscopable, if desired...
2016-03-29 15:49:48 -04:00
Nicholas Nethercote c01058efe7 Bug 1259194 (part 1) - Add 's' prefixes to some statics generated for dom bindings. r=bz.
This makes Class, PrototypeClass and InterfaceObjectClass match existing cases
like sAttributes{,_ids,specs}, sNativeProperties, sNativePropertyHooks.
2016-03-24 06:48:44 +11:00
Jonathan Watt d274717f72 Bug 1259172 - Fix assertion in Codegen.py's InitUnforgeablePropertiesOnHolder function. r=bz 2016-03-04 16:24:16 +00:00
Nicholas Nethercote f80479d54a Bug 1011826 - Split Prefable into two pieces. r=bz.
The fields in Prefable relating to disabling are usually all zero. This patch
moves them into a new struct PrefableDisablers. This reduces static data size
by 92 KB, which applies to every process. It might also make isEnabled() faster
because the common case only involves one test instead of two.

--HG--
extra : rebase_source : 004eb8221e23b741c4837dd95af93e437edb4587
2016-03-24 06:09:24 +11:00
Nicholas Nethercote a299ce6d78 Bug 1258924 - Reorder DOMIfaceAndProtoJSClass fields to reduce padding. r=bz.
On 64-bit this reduces sizeof(DOMIfaceAndProtoJSClass) from 336 to 328, saving
20 KiB. On 32-bit it should save half that.
2016-03-24 05:54:38 +11:00
Boris Zbarsky e3b2de6aa9 Bug 1255817 part 2. Get rid of AutoJSAPI::OwnsErrorReporting and AutoJSAPI::TakeOwnershipOfErrorReporting. r=bholley 2016-03-23 11:44:54 -04:00
Boris Zbarsky 5140ac5aae Bug 1257725 part 1. Get rid of ThreadsafeAutoJSContext usage in JSEventHandler::HandleEvent. r=smaug 2016-03-23 11:02:57 -04:00
Till Schneidereit 6602beaac6 Bug 1257030 - Add support for supplying preexisting stack instead of capturing one for use as the async parent stack of CallbackObject. r=bz,tromey 2016-03-17 18:07:43 +01:00
Boris Zbarsky 57fc0e989c Bug 1255709. Simplify the JSContext/GlobalObject handling in ServiceWorkerRegistrationMainThread::GetPushManager a bit. r=bkelly 2016-03-11 16:43:31 -05:00
Kyle Huey 9eea75a6f5 Bug 1252268: If the slow script dialog aborts an interval timer callback, don't schedule it again. r=bz 2016-03-10 01:50:56 -08:00
Boris Zbarsky 3d39097c61 Bug 1254293. Fix dom::GetArrayIndexFromId to actually follow the spec for large indices (i.e. ones that don't fit in in int32_t). r=peterv 2016-03-08 17:21:40 -05:00
Boris Zbarsky 4d888c1249 Bug 1250949. Add some better documentation to the dictionary init codegen. r=ehsan 2016-03-02 12:38:24 -05:00
Ehsan Akhgari afaabe46dc Bug 1250985 - Part 1: Add a way to identify whether a WebIDL dictionary has any members present; r=bzbarsky 2016-02-25 19:49:06 -05:00
Carsten "Tomcat" Book 839ce412a8 merge fx-team to mozilla-central a=merge 2016-02-23 16:54:50 +01:00
Eddy Bruel dae2755a45 Bug 1119490 - Expose the URL constructor to WorkerDebuggerGlobalScope;r=khuey 2016-02-22 10:41:09 +01:00
Andrew McCreight b80e656e9e Bug 1247679, part 3 - Replace NS_IMPL_CYCLE_COLLECTION_TRACE_JSVAL_MEMBER_CALLBACK with JS_MEMBER. r=smaug 2016-02-22 10:11:02 -08:00
Boris Zbarsky 6f458fb1f3 Bug 1216751 part 4. Implement forEach for iterable interfaces. r=qdot 2016-02-17 22:58:04 -05:00
Boris Zbarsky ac58157b15 Bug 1216751 part 3. For pair iterators, @@iterator should be an alias for "entries". Similarly for maplikes and "entries" and setlikes and "values". r=qdot 2016-02-17 22:58:02 -05:00
Boris Zbarsky dcb6669fbd Bug 1216751 part 2. For value iterators, "entries", "keys", and "values" must just come from Array.prototype. r=qdot 2016-02-17 22:58:00 -05:00
Boris Zbarsky a7cbbd23ab Bug 1216751 part 1. Restrict value iterators to interfaces that have indexed properties and pair iterators to interfaces that do not have indexed properties. r=qdot 2016-02-17 22:57:57 -05:00
Boris Zbarsky 7f1e8d6111 Bug 1247346. Slot indices on IDL interface members that get a slot should be per-interface, not a single per-member number. r=peterv
This matters when a [Cached] attribute appears on an interface, call it C,
which is a consequential interface for both A and B.  There is no a priori
reason that A and B would have identical numbers of their own [Cached]
attributes, which will come before the members of consequential interfaces in
the member array, so in general the attribute may have different slot indices in A
and B.

The approach taken here is to keep things simple and make the slot index of an
interface member either None or a dict mapping interface name to the slot
index.  In the common case of only one interface being involved this is a
little wasteful, but it keeps things simple for consumers, and one extra dict
per [Cached] attribute is not a big deal in the grand scheme of the data
structures the Web IDL parser produces.  Another option would be to store None,
a number (if there is only one interface involved), or a dict (if there are
several interfaces involved).  If we did that, we'd probably want to add some
method to get the slot index for a given interface, because the logic for doing
that would get a bit more complicated.
2016-02-12 21:29:49 -05:00
Boris Zbarsky 98fb58a90f Bug 1241349 part 5. Start using binding_detail::UnprivilegedJunkScopeOrWorkerGlobal in dictionary ToJSON conversions. r=bholley 2016-02-10 23:31:33 -05:00
Boris Zbarsky e25e4580b2 Bug 1241349 part 4. Start using binding_detail::UnprivilegedJunkScopeOrWorkerGlobal in maplike/setlike code. r=bholley 2016-02-10 23:31:33 -05:00
Boris Zbarsky 9f63f6adc2 Bug 1241349 part 2. Restrict generation of ToJSON methods on dictionaries to only dictionaries we can safely stringify with JS::ToJSONMaybeSafely. r=bholley 2016-02-10 23:31:33 -05:00
Boris Zbarsky 24566ec012 Bug 1243001 part 7. Stop wrappercaching dom::Promise when SPIDERMONKEY_PROMISE is defined. r=peterv
nsWrapperCache expects the object it stores to have an ObjectMoved op that will
notify the wrapper cache when the object is moved.  SpiderMonkey promises don't
have a way to do this.

The XPCConvert changes are needed to allow code that passes around Promise
objects as nsISupports to continue working instead of ending up with
double-wrapped nsISupports (XPCWrappedNative for an nsISupports XPCWrappedJS)
around the SpiderMonkey Promise.
2016-02-09 17:40:31 -05:00
Boris Zbarsky 3366af6c39 Bug 1243001 part 5. Get rid of most of the dom::Promise methods when SPIDERMONKEY_PROMISE is defined, and reimplement the rest in terms of SpiderMonkey Promise. r=peterv
This is the bulk of the new dom::Promise implementation.  It's using the APIs
that bug 911216 part 1 adds.
2016-02-09 17:40:31 -05:00
Boris Zbarsky 7fd3989391 Bug 1243001 part 2. Make Promise an empty [NoInterfaceObject] interface when SPIDERMONKEY_PROMISE is defined. r=peterv
The idea is to not define a "Promise" property on the global and not generate
any of the methods, since SpiderMonkey will implement all of those, but to keep
some of the conversion to/from JS logic and the IDL parser validation bits that
we have right now.  Once we can assume SPIDERMONKEY_PROMISE we can probably
change how the "Promise" identifier is handled by the IDL parser and how the
resulting type is handled by codegen, but for now we're aiming for minimal
changes.
2016-02-09 17:40:30 -05:00
Birunthan Mohanathas d7371d07d0 Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda d381b4bca6 Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00
Birunthan Mohanathas 373593275e Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Boris Zbarsky c7fe6eed14 Bug 1243438. Don't try to include the filename '<unknown>' when including headers for unions that have a built-in typedef they're referenced by. r=peterv 2016-01-29 16:56:04 -05:00
Tom Schuster 4d6aaf2f25 Bug 1242214 - Rename JSPropertyDescriptor JS::PropertyDescriptor everywhere else. r=smaug 2016-01-28 11:28:04 +01:00
Boris Zbarsky d4db9bedd0 Bug 1242054. Get rid of AbortablePromise, so we can move Promise into SpiderMonkey more easily. r=khuey 2016-01-23 00:37:44 -05:00
Jakob Stoklund Olesen da78ae7e9b Bug 1238679 - Put JSJitInfo::depth in anonymous union. r=nbp
Add a JSJitInfo::nativeOp field which will be used to identify SIMD operations.
2016-01-20 12:50:06 -08:00
Ehsan Akhgari a35b970c9e Bug 1239788 - Don't include non-main-thread assertions in the constructor enabled check for [Exposed=System] WebIDL interfaces; r=bzbarsky 2016-01-14 16:55:50 -05:00
Terrence Cole fd0fcea703 Bug 1235923 - Part 2: Use new Root tracing APIs in Gecko; r=smaug 2015-12-30 11:31:16 -08:00
Terrence Cole 97c4c6520f Backout 7621c3ea95cb11e1c376a9f705accc0f90057c0a (bug 1235923) for build bustage on a CLOSED TREE.
--HG--
extra : rebase_source : 6c54aa7e1af75c270ab2b6833b56c780c537e297
2016-01-06 12:05:06 -08:00
Terrence Cole d38e840e6f Bug 1235923 - Part 2: Use new Root tracing APIs in Gecko; r=smaug 2015-12-30 11:31:16 -08:00
Tooru Fujisawa 88d3b3ecc6 Bug 1180290 - Part 5: Remove getter/setter variant for ThrowInvalidThis message. r=bz 2016-01-06 17:54:00 +09:00
Olli Pettay 5ca565690e Bug 1120016 - Allocate short lived JS wrappers in the Nursery, r=mccr8,terrence 2015-12-31 15:21:49 +02:00
Wes Kocher 792ca14825 Backed out changeset 0d55a6e4e98e (bug 1120016) for 980 b2g hazards
--HG--
extra : commitid : 27OIHVsa17S
2015-12-30 16:34:18 -08:00
Olli Pettay 2066f6d7b3 Bug 1120016 - Allocate short lived JS wrappers in the Nursery, r=mccr8,terrence
--HG--
extra : rebase_source : 3d51b7fc9962a93eb6071328db84b5b327225246
2015-12-30 19:16:13 +02:00
Jan de Mooij 1762bca503 Bug 1225396 part 4 - Remove @@iterator workaround in Codegen.py. r=bz 2015-12-09 22:56:17 -05:00
Boris Zbarsky affdb545dd Bug 1230291. Correctly include nsContentUtils when generating a manual hasInstance with nsIDOM* stuff or when we have a JS-implemented interface with clearable cached attrs 2015-12-04 09:51:04 -05:00
Peter Van der Beken 426b1b699a Bug 1227987: Simplify CGDOMJSClass::define. r=bz.
--HG--
extra : rebase_source : aaf309c651b97ec750c56c2fbdf635529718fa14
2015-11-25 16:31:42 +01:00
Boris Zbarsky 09e35c652a Bug 1048695 part 1. Pass the set of globals where a member should NOT be exposed to MemberCondition. r=peterv 2015-12-01 12:02:33 -05:00
Nathan Froyd df330eaf5c Bug 1229176 - make check for ChromeOnly interfaces for header inclusion more complete; r=bz
If an interface has a {Chrome,}Constructor(), it doesn't show up as a
normal member.  If the interface has a ChromeConstructor, we need to
include nsContentUtils.h in the generated file for a
ThreadsafeIsCallerChrome check.  There is an existing check for a
descriptor's ChromeOnly-ness in CGBindingRoot; this check is used to
determine whether nsContentUtils.h is included in the generated file.
But the check in descriptorHasChromeOnly doesn't detect this
(ChromeOnly) constructor, and so nsContentUtils.h won't be included if
there are no other ChromeOnly members, or if the interface itself is not
ChromeOnly.

Therefore, we need to take the constructor of the interface (if any)
into account when checking for ChromeOnly-ness.
2015-11-30 20:57:57 -05:00
Boris Zbarsky 8ed93afa4c Bug 1229031. Make sure to not init binding pref var caches on worker threads. r=smaug 2015-11-30 22:04:20 -05:00
Boris Zbarsky 73208ce2f3 Bug 1228707. Add a away to call Web IDL callbacks while ignoring any errors from them, and use it in a few places. r=smaug 2015-11-30 22:04:09 -05:00
Boris Zbarsky 4cb14db1a1 Bug 1170760 part 13. Add subclassing support to Promise::Then/Catch. r=baku,efaust 2015-11-25 15:48:10 -05:00
Boris Zbarsky bc6a0c8f1c Bug 1170760 part 12. Rip out the promise-resolved-with-promise fast path. r=baku 2015-11-25 15:48:09 -05:00
Boris Zbarsky 0baeed7ed3 Bug 1170760 part 10. Add subclassing support to Promise::Resolve. r=baku,efaust 2015-11-25 15:48:09 -05:00
Boris Zbarsky c9985b9298 Bug 1170760 part 4. Change Promise::Constructor to run in the Xray compartment when new Promise happens over Xrays. r=peterv 2015-11-25 15:48:08 -05:00
Boris Zbarsky 7229385d25 Bug 1170760 part 3. Add an @@species getter on Promise. r=peterv 2015-11-25 15:48:08 -05:00
Boris Zbarsky 64186b5b76 Bug 1170760 part 2. Pass in the 'this' value to Promise static methods. r=peterv 2015-11-25 15:48:08 -05:00
Phil Ringnalda 53745073f0 Back out 13 changesets (bug 1170760) for Gu bustage in homescreen/test/unit/apps_test.js
CLOSED TREE

Backed out changeset 5d84599a8846 (bug 1170760)
Backed out changeset 6104fe33d5f5 (bug 1170760)
Backed out changeset 1dfb229da01d (bug 1170760)
Backed out changeset f380faddfdd8 (bug 1170760)
Backed out changeset 541831dc6b57 (bug 1170760)
Backed out changeset 6a5b7dfab882 (bug 1170760)
Backed out changeset ee514a256922 (bug 1170760)
Backed out changeset 3c2c1acc34ee (bug 1170760)
Backed out changeset dc2a7f5dc5d6 (bug 1170760)
Backed out changeset b312a08fbab5 (bug 1170760)
Backed out changeset cb6aba9b8497 (bug 1170760)
Backed out changeset 39e4f5b1ba40 (bug 1170760)
Backed out changeset 7d79cce3630a (bug 1170760)
2015-11-25 21:02:55 -08:00
Boris Zbarsky d71fb767c8 Bug 1170760 part 13. Add subclassing support to Promise::Then/Catch. r=baku,efaust 2015-11-25 15:48:10 -05:00
Boris Zbarsky f1d0f460ff Bug 1170760 part 12. Rip out the promise-resolved-with-promise fast path. r=baku 2015-11-25 15:48:09 -05:00
Boris Zbarsky 93faa5b1b0 Bug 1170760 part 10. Add subclassing support to Promise::Resolve. r=baku,efaust 2015-11-25 15:48:09 -05:00
Boris Zbarsky 56a0511eb4 Bug 1170760 part 4. Change Promise::Constructor to run in the Xray compartment when new Promise happens over Xrays. r=peterv 2015-11-25 15:48:08 -05:00
Boris Zbarsky c1ba24a868 Bug 1170760 part 3. Add an @@species getter on Promise. r=peterv 2015-11-25 15:48:08 -05:00
Boris Zbarsky b4cbee7794 Bug 1170760 part 2. Pass in the 'this' value to Promise static methods. r=peterv 2015-11-25 15:48:08 -05:00
Sunny Sidhu 268b906ced Bug 1225782 - Removes GlobalPropertiesAreOwn(). r=bz 2015-11-20 10:00:00 +01:00
Boris Zbarsky 35f1292e72 Bug 1225603. Codegen ToJSValue overloads for Web IDL enums. r=smaug,jib 2015-11-21 12:15:11 -05:00
Boris Zbarsky 72f8befdf5 Bug 979591. Disallow calling WebIDL constructors as functions even for system callers in release builds. r=peterv 2015-11-20 16:29:41 -05:00
Boris Zbarsky fb747879e0 Bug 1224007 part 3. Push down WouldReportJSException into MaybeSetPendingException, since anyone calling the latter will propagate the JS exception as needed. r=peterv 2015-11-20 16:29:41 -05:00
Boris Zbarsky c19412a7ac Bug 1224007 part 1. Rename ThrowMethodFailed to MaybeSetPendingException and make it an ErrorResult instance method. r=peterv 2015-11-20 16:29:40 -05:00
Boris Zbarsky 9533b5464f Bug 1226448. Fix Optional::Construct to do perfect forwarding, and fix the dictionary assignment operator code for members that can have missing values to not try constructing and already constructed member. r=jib 2015-11-20 13:36:45 -05:00
Chris Peterson 155af957a6 Bug 1223265 - Fix -Wunreachable-code and -Wimplicit-fallthrough warnings in dom/bindings and dom/ipc. r=khuey 2015-11-08 21:41:40 -08:00
Boris Zbarsky 7c672a451f Bug 1225392 part 2. WebIDL autogenerated iterators should chain up to %IteratorPrototype%. r=qdot 2015-11-18 18:26:07 -05:00
Kyle Huey bdbb2ec50a Bug 1224061: Make Event::InitEvent infallible. r=smaug 2015-11-13 08:09:42 +08:00
Olli Pettay 9eb0f0cb58 Bug 1220900 - Remove unused JSBindingFinalized, r=peterv 2015-11-09 18:24:09 +02:00
Jan de Mooij 115d04ec63 Bug 1125423 part 5 - Remove innerObject/outerObject/thisValue Class hooks. r=luke 2015-11-06 19:03:52 +01:00
Jan de Mooij fffc37012e Bug 1125423 part 2 - Rename stopAtOuter argument to *Unwrap functions to stopAtWindowProxy. r=bz 2015-11-06 19:03:52 +01:00
Jon Coppeard a6103d6c93 Bug 1219183 - Update comments that reference renamed thisObject hook r=shu 2015-10-30 09:50:06 +00:00
Boris Zbarsky 7ae3b58eb6 Bug 1039986. Make Function.prototype.toString work on Web IDL interface objects. r=jorendorff,peterv 2015-10-27 16:25:14 -04:00
Jason Orendorff 0fed3b5351 Bug 1210570 - Ensure that ToPrimitive(location) is not spoofable. r=bz.
--HG--
extra : commitid : 2rz0SkgNFBy
extra : rebase_source : cc7551193fb3a81cb6d7b69535eb152335a6cda4
2015-10-06 10:42:17 -05:00
Jon Coppeard 59be23d316 Bug 930414 - Replace |thisObject| object op with |thisValue| and use if for modules r=shu r=smaug 2015-10-21 10:21:44 +01:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Boris Zbarsky a9549930a2 Bug 1215559. Create separate iterator native types for one-type and two-type iterators, so we don't force the one-type case to implement GetKeyAtIndex. r=qdot 2015-10-16 15:54:51 -04:00
Boris Zbarsky b9fcc36e5e Back out revision 5985a4717758 (bug 1215559) because the Linux compiler is not happy with the template using bits 2015-10-16 16:16:36 -04:00
Boris Zbarsky ab96208de8 Bug 1215559. Create separate iterator native types for one-type and two-type iterators, so we don't force the one-type case to implement GetKeyAtIndex. r=qdot 2015-10-16 15:54:51 -04:00
Kyle Machulis 09d9074cb2 Bug 1085293 - WebIDL Iterable Implementation and Tests; r=bz 2015-10-15 12:06:13 -07:00
Kyle Machulis 95180ed852 Backout of 91e9d59af87e, 96acfd0d21cf (Bug 1085293) due to build bustage 2015-10-14 12:00:41 -07:00
Kyle Machulis d51149c624 Bug 1085293 - WebIDL Iterable Implementation and Tests; r=bz 2015-10-14 11:33:46 -07:00
Jeff Walden 75b257996c Bug 1052139 - Make more parts of the global object's prototype chain immutable, when we flip that switch. r=bz
--HG--
extra : rebase_source : 7d196acc689d26153ba2462ff2c78fc94ec7351a
2015-10-08 15:08:13 -07:00
Jeff Walden c593e1ed8f Bug 1052139 - Perform proper failure handling in interfaces' CreateInterfaceObjects method, after dom::CreateInterfaceObjects has been called and possibly created the interface's constructor and prototype. r=bz
--HG--
extra : rebase_source : 5d6b7cf208c690d61219baa3cb2d5bfeb471742e
2015-09-29 09:31:42 -07:00
Boris Zbarsky 8a61b380af Bug 1211624. document.all should be iterable, and so should be various other things that have an anonymous indexed getter. r=qdot 2015-10-07 09:31:32 -04:00
Phil Ringnalda 23f82e924e Back out 2 changesets (bug 1052139) for mochitest-jetpack bustage
Backed out changeset 3dc503961322 (bug 1052139)
Backed out changeset 6f278bc63614 (bug 1052139)
2015-10-02 22:10:24 -07:00
Jeff Walden c29c28268a Bug 1052139 - Make the [[Prototype]] of all objects on the window object's [[Prototype]] chain be immutable, BUT also disable the code that actually respects immutable-prototype handling. When we want to enable this, it'll then be a one-line change. r=bz
--HG--
extra : rebase_source : e8116d4aed87f03f4e0b91b60c6ccf43f040b31a
2014-11-28 02:58:23 -05:00
Jeff Walden ddc5b08c61 Bug 1052139 - Perform proper failure handling in interfaces' CreateInterfaceObjects method, after dom::CreateInterfaceObjects has been called and possibly created the interface's constructor and prototype. r=bz
--HG--
extra : rebase_source : 683614405bb61ff078e5504d9c2717a92ed2976e
2015-09-29 09:31:42 -07:00
Jeff Walden 1876c2cd4f Bug 1052139 - Reorder CGCreateInterfaceObjectsMethod a bit to correspond to the ordering of generated code. r=bz
--HG--
extra : rebase_source : 47790e00e7a6481078927380494bf9384045703c
2015-09-29 09:31:42 -07:00
Jason Orendorff deb2270515 Bug 1054756, part 5 - Remove Class::convert.
--HG--
extra : commitid : 6KCxWrCseSZ
extra : rebase_source : 63f3cd6ec1ade43c732ffd9b661fe6f2dca9eb4b
2015-03-20 16:28:59 -05:00
Martin Thomson 4574e04530 Bug 1155923 - Add Deprecated attribute to interfaces, r=peterv
--HG--
extra : transplant_source : q%B6%21%A22%A6%8Ftg%C8%1D%02%91/%C7%8A%AA%E2%C6g
2015-09-28 11:25:04 -07:00
Carsten "Tomcat" Book 4952084732 Backed out 3 changesets (bug 1155923) for causing test failures in promises-call.html
Backed out changeset 321a932e01a7 (bug 1155923)
Backed out changeset 6ac38acd6ab2 (bug 1155923)
Backed out changeset 2981db92416a (bug 1155923)
2015-09-28 14:02:41 +02:00
Martin Thomson d4f1b7fa44 Bug 1155923 - Add Deprecated attribute to interfaces. r=peterv
--HG--
extra : transplant_source : %E7_%24v%EA%08%AB1%A2%2BPl%AE%85%B9-%A6%D9%FEG
2015-09-24 16:31:47 -07:00
Wes Kocher b19d88b060 Backed out 7 changesets (bug 1206168, bug 1177318, bug 1054756) for hazard build failures CLOSED TREE
Backed out changeset e892727a373a (bug 1206168)
Backed out changeset 6c93d1044b7e (bug 1054756)
Backed out changeset 105433ce195b (bug 1054756)
Backed out changeset 13128a88f2b9 (bug 1054756)
Backed out changeset c250abf4fd17 (bug 1054756)
Backed out changeset fc9fef646a97 (bug 1054756)
Backed out changeset c8897f109a08 (bug 1177318)
2015-09-23 12:31:19 -07:00
Jason Orendorff 54e92d9beb Bug 1054756, part 5 - Remove Class::convert.
--HG--
extra : commitid : KrjkP1flM3c
extra : rebase_source : 8c367e3158528e92ac8ebc51521d32472f1e5bb1
2015-03-20 16:28:59 -05:00
Jeff Walden 4046fe1490 Bug 1179003 - Convert the infallible objectClassIs proxy hook into a fallible getBuiltinClass hook that indicates class type via outparam. r=efaust, r=bz on DOM bits, r=billm on IPC bits
--HG--
extra : rebase_source : 6ddc3727c411fdfced6338e5e383a10572575f0f
2015-08-28 21:55:40 -07:00
Jeff Walden 8106775e9d Bug 1207006 - Remove the unhelpfully-confusing exceptionCodeIndented. r=bz
--HG--
extra : rebase_source : d15686fd71897dc90bcaee1d8c9aba75201abb9d
2015-09-22 09:31:58 -07:00
Tom Schuster e3fbb8bc43 Bug 603201 - Change GetProperty receiver argument to Value in the browser. r=smaug 2015-09-18 00:14:41 +02:00
Jan de Mooij b17e156ddc Bug 1200809 part 1 - Add InlinableNatives JitInfo infrastructure, use it for Math natives. r=bz,nbp
--HG--
extra : rebase_source : a5d9538d66977ed2e202fb6a00924409abbf278b
2015-09-04 15:52:10 +02:00
Jon Coppeard 8acc0315a3 Bug 1088214 - Remove JSCLASS_IMPLEMENTS_BARRIERS now this is implemented everywhere r=terrence 2015-09-02 10:40:10 +01:00
Cameron McCormack 57f66406e3 Bug 968923 - part 4 - hook up use counters to WebIDL bindings; r=bz 2015-02-05 12:53:01 -05:00
Samy Dindane 94585ca8c1 Bug 1142609 - Fix PEP 8 E7xx warnings in dom/bindings's Python code. r=peterv
--HG--
extra : rebase_source : 65c0f7144f5cc7980b7fc4bd65e10870b6156148
2015-08-10 19:11:42 +02:00
Samy Dindane 871a9f37e3 Bug 1142609 - Fix PEP 8 E5xx warnings in dom/bindings's Python code. r=peterv
--HG--
extra : rebase_source : f0e5e5015e300f2332ab00abd68491894be126a2
2015-08-10 19:01:56 +02:00
Samy Dindane 9d7320f826 Bug 1142609 - Fix PEP 8 E3xx warnings in dom/bindings's Python code. r=peterv
--HG--
extra : rebase_source : 32812b0bd734e49848099c128b12bade345848af
2015-08-10 18:57:39 +02:00
Samy Dindane 45094ca5ae Bug 1142609 - Fix PEP 8 E2xx warnings in dom/bindings's Python code. r=peterv
--HG--
extra : rebase_source : 05ba0f6e73f635b7793b54294d9562faf71fb0f7
2015-08-10 18:53:45 +02:00
Samy Dindane 2bb5a0bda9 Bug 1142609 - Fix PEP 8 E128 warnings in dom/bindings's Python code. r=peterv
--HG--
extra : rebase_source : 5e48d4117aef833012765a532973db211a756071
2015-08-10 18:26:29 +02:00
Samy Dindane 6f86525223 Bug 1142609 - Fix PEP 8 E127 warnings in dom/bindings's Python code. r=peterv
--HG--
extra : rebase_source : 6c97537fb1fe5750f9cb1f68ad9dec69f30fea6b
2015-08-10 18:17:07 +02:00
Samy Dindane c02e7721f6 Bug 1142609 - Fix PEP 8 E126 warnings in dom/bindings's Python code. r=peterv
--HG--
extra : rebase_source : ca48125458d1d8897c5d603a3e8f5e26b5591c80
2015-08-10 18:07:53 +02:00
Samy Dindane 4b00b1bd74 Bug 1142609 - Fix flake8's E122 warnings in dom/bindings's Python code. r=peterv
--HG--
extra : rebase_source : 0064edc1dc4b2f52c376bc096de3374b45d5b827
2015-08-10 17:47:25 +02:00
Samy Dindane 92c8018e1d Bug 1142609 - Fix PEP 8 E121 warnings in dom/bindings's Python code. r=peterv
--HG--
extra : rebase_source : cc67de8bd27b2de1c4bc31d050b7c49eeee3750c
2015-08-10 17:42:08 +02:00
Samy Dindane 7fff94acea Bug 1142609 - Fix PEP 8 E111/E113 warnings in dom/bindings's Python code. r=peterv
--HG--
extra : rebase_source : 73569c20536f0a3a0d91752ad8878f3ab2d75f99
2015-08-10 17:34:45 +02:00
Terrence Cole de72ab688b Bug 1191529 - Remove JSIdArray and AutoIdArray and replace with Rooted<IdVector>; r=mccr8, r=jonco
* * *
imported patch 2_remove_AutoIdArray_gk

--HG--
extra : rebase_source : f4492f209248c7ae4b74d7d0345c51fa893167da
2015-08-05 11:02:00 -07:00
Aryeh Gregor 80ea0a3e53 Bug 1190823 - Move OwningNonNull.h to xpcom/base/; r=froydnj
--HG--
rename : dom/bindings/OwningNonNull.h => xpcom/base/OwningNonNull.h
2015-08-05 15:28:27 +03:00
Boris Zbarsky 78b27415bc Bug 983301 part 1. Handle JS-to-native conversion for Promise values via calling Promise::Resolve on whatever value was passed in (except if the type is nullable and the passed-in value is null or undefined). r=peterv 2015-07-31 13:30:55 -04:00
Boris Zbarsky 57621e1167 Bug 1135961. Implement subclassing of DOM objects. r=peterv 2015-07-31 13:30:55 -04:00
Boris Zbarsky 89016f2d0c Bug 1186696. Event handlers on JS-implemented webidl interfaces should have the same behavior as other event handlers: accept all values, convert non-objects to null. r=smaug 2015-07-28 12:35:39 -04:00
Tom Tromey a37b7fa928 Bug 1148593 - Pass JSContext to CallbackObject constructor. r=bz
--HG--
extra : rebase_source : 5c4c1b8dc646fc76bda37a8c6e35a6494d0800b8
2015-07-24 07:00:00 -04:00
Boris Zbarsky 5487ec884b Bug 1185028. Fix GCJsonifierMethod to correctly handle worker descriptors. r=nsm
toBindingNamespace() should only be called on descriptor names, not interface names.
2015-07-20 10:14:21 -04:00
Ryan VanderMeulen b171b787bd Backed out changesets fa9fe193778f and 3eaf867930dd (bug 1148593) for test_async_setTimeout_stack.html and test_async_setTimeout_stack_across_globals.html failures. 2015-07-17 12:37:24 -04:00
Tom Tromey 2bbc02624b Bug 1148593 - Pass JSContext to CallbackObject constructor. r=bz 2015-07-17 07:47:00 -04:00
Jan de Mooij bd0285d1bf Bug 1177892 part 6 - Remove UINT_TO_JSVAL. r=evilpie 2015-07-17 11:51:54 +02:00
Jan de Mooij aa64d5cee2 Bug 1177892 part 5 - Remove DOUBLE_TO_JSVAL. r=evilpie 2015-07-17 11:51:52 +02:00
Kan-Ru Chen 5c2f3fc74e Bug 1179718 - Rename CheckPermissions to CheckAnyPermissions. r=bz 2015-07-17 11:07:53 +08:00
Kan-Ru Chen a5886f19c7 Bug 1179718 - Add a CheckAllPermissions extended attribute to WebIDL. r=bz 2015-07-17 11:06:23 +08:00
Boris Zbarsky d39d28be5c Bug 1180770 part 2. Remove the unused ifaceName/memberName arguments of ThrowMethodFailedWithDetails and rename it to ThrowMethodFailed. r=peterv 2015-07-09 22:51:28 -04:00
Martin Thomson a0c4950dee Bug 1172785 - Adding StaticClassOverride routing for JS implemented WebIDL, r=peterv
--HG--
extra : commitid : H3mD5wT8wHm
extra : rebase_source : 64b9ed654bb2cc739a41981315350de4263f6930
2015-07-06 10:40:03 -07:00
Boris Zbarsky 6a7660edde Bug 1176236. Make typed array arguments work for constructors of JS-implemented interfaces. r=peterv 2015-07-01 14:15:20 -04:00
Boris Zbarsky d1c9680b83 Bug 1177869. Fix example codegen to output the correct return type for WrapObject in the non-wrappercached case. r=peterv 2015-07-01 14:15:20 -04:00
Boris Zbarsky 2a8044e088 Bug 1162956 part 2. Forward-declare things as needed in example codegen. Also, use js/TypeDecls.h for the JSContext declaration and include BindingDeclarations.h so we get things like Optional (which are a pain to forward-declare). r=peterv 2015-07-01 14:15:19 -04:00
Boris Zbarsky af37d2c61b Bug 1162956 part 1. Move forwardDeclareForType to be a method on ForwardDeclarationBuilder. r=peterv 2015-07-01 14:15:19 -04:00