Commit Graph

4825 Commits

Author SHA1 Message Date
Bobby Holley
a15b59d7f8 Bug 1206817 - Take ownership of error reporting in the component loader. r=bz 2015-09-21 17:05:59 -07:00
Mike Hommey
538706caba Bug 1203840 - Trigger dirty pages purge after CC. r=njn,r=smaug,r=mccr8
Jemalloc 4 purges dirty pages regularly during free() when the ratio of dirty
pages compared to active pages is higher than 1 << lg_dirty_mult.  We set
lg_dirty_mult in jemalloc_config to limit RSS usage, but it also has an impact
on performance.

So instead of enforcing a high ratio to force more pages being purged, we keep
jemalloc's default ratio of 8, and force a regular purge of all dirty pages,
after cycle collection.

Keeping jemalloc's default ratio avoids cycle-collection-triggered purge to
have to go through really all dirty pages when there are a lot, in which case
the normal jemalloc purge during free() will already have kicked in. It also
takes care of everything that doesn't run the cycle collector still having
a level of purge, like plugins in the plugin-container.

At the same time, since jemalloc_purge_freed_pages does nothing with jemalloc 4,
repurpose the MEMORY_FREE_PURGED_PAGES_MS telemetry probe to track the time
spent in this cycle-collector-triggered purge.
2015-09-20 17:43:43 +09: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
Nicholas Nethercote
647b520991 Bug 1201135 - Rename pldhash.{h,cpp} to PLDHashTable.{h,cpp}. r=mccr8.
--HG--
rename : xpcom/glue/pldhash.cpp => xpcom/glue/PLDHashTable.cpp
rename : xpcom/glue/pldhash.h => xpcom/glue/PLDHashTable.h
extra : rebase_source : 06b9d30db96ed78500fd44d9c0b51609103508a3
2015-09-15 20:49:53 -07:00
Christoph Kerschbaumer
cd033a0e00 Bug 1205154 - Use channel->Open2() in js/xpconnect/src/XPCJSRuntime.cpp (r=sicking) 2015-09-15 19:52:07 -07:00
Nicholas Nethercote
2ee4fd783b Bug 1121760 (part 6) - Move all remaining PL_DHash*() functions into PLDHashTable. r=poiru.
--HG--
extra : rebase_source : 3cdc975507170d783b02d70f7c7d95c6bf2e1bcd
2015-09-14 14:23:47 -07:00
Nicholas Nethercote
59683492e5 Bug 1121760 (part 3) - Remove PL_DHashTableRemove(). r=poiru.
--HG--
extra : rebase_source : c34d693de4aca45f2ea05c2767c8b1007c89df29
2015-09-14 14:23:24 -07:00
Nicholas Nethercote
479244f7c9 Bug 1121760 (part 2) - Remove PL_DHashTableAdd(). r=poiru.
--HG--
extra : rebase_source : 41eb939bfb5c925cba58b1af57abce9a4e5fdb30
2015-09-14 14:23:12 -07:00
Nicholas Nethercote
fcfdd8f54b Bug 1121760 (part 1) - Remove PL_DHashTableSearch(). r=poiru.
--HG--
extra : rebase_source : 770e1f49a451ecbadd778e071b204611e27cf701
2015-05-21 00:34:25 -07:00
Michael Layzell
0097c41e01 Bug 1201190 - Part 3: Mark every consumer of GUARD_OBJECT as MOZ_RAII, r=ehsan 2015-09-12 16:53:33 -04:00
Dragana Damjanovic
4504f5f395 Bug 1197791 - hide password for uri in error and web console. r=michal r=mrbkap 2015-09-11 08:44:00 +02:00
Terrence Cole
0716d4888f Bug 1199843 - Part 3: Strongly type JS::TraceChildren; r=jonco r=mccr8
--HG--
extra : rebase_source : c779897338dc4b73dca98517acb8d0eef7e0d7a5
2015-09-02 11:34:36 -07:00
J. Ryan Stinnett
87a2341396 Bug 1186993 - Add MOZ_CHAOSMODE to XPCShell. r=roc 2015-09-03 18:31:30 -05:00
Terrence Cole
4955cf8ac2 Bug 1196925 - Remove the non-existing relocatable store buffer counts from about:memory; r=njn 2015-08-26 14:51:43 -07:00
Terrence Cole
ca1d87a88a Backout 15fa4c3a45ec (Bug 1196848) for being on top of a regression.
--HG--
extra : rebase_source : 7783be3966c4f963ad9aadfa9dc145b1b832c143
2015-09-03 09:35:43 -07:00
Terrence Cole
46a19ca98d Backout ff66ba4688c0 (Bug 1196925) for being on top of a regression.
--HG--
extra : rebase_source : 2a97f610801a7157f513ed3a3b52533d724f1c81
2015-09-03 09:35:02 -07:00
Terrence Cole
23db9f8879 Bug 1196925 - Remove the non-existing relocatable store buffer counts from about:memory; r=njn
--HG--
extra : rebase_source : 7b704f68283b7921225e43ec607315f283556817
2015-08-26 14:51:43 -07:00
Terrence Cole
899ec10be3 Bug 1196848 - Add Zone::uniqueIds to about:memory reports; r=njn
--HG--
extra : rebase_source : 0b7173fc4d344f55b5b8c41e010ea65c7048091e
2015-08-26 14:51:43 -07: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
Nicholas Nethercote
92315e0173 Bug 1200484 (part 5) - Use JS column numbers in XPCNativeInterface::NewInstance(). r=mrbkap.
--HG--
extra : rebase_source : 0dcb6934b44062887d911fd0e9eeaff817d65454
2015-09-01 17:56:03 -07:00
Nicholas Nethercote
f1569466ff Bug 1200484 (part 2) - Use JS column numbers in ReportWrapperDenial(). r=mrbkap.
--HG--
extra : rebase_source : 5bb85db84152d38cdf4d6206e0b4d2d5ee95b91b
2015-08-31 21:28:50 -07:00
Ben Kelly
e4c6f8d174 Bug 1184607 P7.6 Expose CacheStorage .caches property on xpcshell global. r=smaug
* * *
7.6 interdiff
2015-08-31 14:26:30 -07:00
Nicholas Nethercote
f44287005f Bug 1198334 (part 1) - Replace the opt-in FAIL_ON_WARNINGS with the opt-out ALLOW_COMPILER_WARNINGS. r=glandium.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.

--HG--
extra : rebase_source : 82e3387abfbd5f1471e953961d301d3d97ed2973
2015-08-27 20:44:53 -07:00
Shu-yu Guo
74dcccdc3f Bug 1193583 - Fix misc XPConnect and devtools tests. (r=jorendorff) 2015-08-30 15:08:19 -07:00
Ryan VanderMeulen
2f2b6923e2 Merge m-c to inbound. a=merge
CLOSED TREE
2015-08-28 12:12:44 -04:00
Ben Tian
f9389ddddf Bug 1193379 - Create dom/bluetooth/common/webapi folder. r=joliu
--HG--
rename : dom/bluetooth/common/BluetoothAdapter.cpp => dom/bluetooth/common/webapi/BluetoothAdapter.cpp
rename : dom/bluetooth/common/BluetoothAdapter.h => dom/bluetooth/common/webapi/BluetoothAdapter.h
rename : dom/bluetooth/common/BluetoothClassOfDevice.cpp => dom/bluetooth/common/webapi/BluetoothClassOfDevice.cpp
rename : dom/bluetooth/common/BluetoothClassOfDevice.h => dom/bluetooth/common/webapi/BluetoothClassOfDevice.h
rename : dom/bluetooth/common/BluetoothDevice.cpp => dom/bluetooth/common/webapi/BluetoothDevice.cpp
rename : dom/bluetooth/common/BluetoothDevice.h => dom/bluetooth/common/webapi/BluetoothDevice.h
rename : dom/bluetooth/common/BluetoothDiscoveryHandle.cpp => dom/bluetooth/common/webapi/BluetoothDiscoveryHandle.cpp
rename : dom/bluetooth/common/BluetoothDiscoveryHandle.h => dom/bluetooth/common/webapi/BluetoothDiscoveryHandle.h
rename : dom/bluetooth/common/BluetoothGatt.cpp => dom/bluetooth/common/webapi/BluetoothGatt.cpp
rename : dom/bluetooth/common/BluetoothGatt.h => dom/bluetooth/common/webapi/BluetoothGatt.h
rename : dom/bluetooth/common/BluetoothGattCharacteristic.cpp => dom/bluetooth/common/webapi/BluetoothGattCharacteristic.cpp
rename : dom/bluetooth/common/BluetoothGattCharacteristic.h => dom/bluetooth/common/webapi/BluetoothGattCharacteristic.h
rename : dom/bluetooth/common/BluetoothGattDescriptor.cpp => dom/bluetooth/common/webapi/BluetoothGattDescriptor.cpp
rename : dom/bluetooth/common/BluetoothGattDescriptor.h => dom/bluetooth/common/webapi/BluetoothGattDescriptor.h
rename : dom/bluetooth/common/BluetoothGattServer.cpp => dom/bluetooth/common/webapi/BluetoothGattServer.cpp
rename : dom/bluetooth/common/BluetoothGattServer.h => dom/bluetooth/common/webapi/BluetoothGattServer.h
rename : dom/bluetooth/common/BluetoothGattService.cpp => dom/bluetooth/common/webapi/BluetoothGattService.cpp
rename : dom/bluetooth/common/BluetoothGattService.h => dom/bluetooth/common/webapi/BluetoothGattService.h
rename : dom/bluetooth/common/BluetoothLeDeviceEvent.cpp => dom/bluetooth/common/webapi/BluetoothLeDeviceEvent.cpp
rename : dom/bluetooth/common/BluetoothLeDeviceEvent.h => dom/bluetooth/common/webapi/BluetoothLeDeviceEvent.h
rename : dom/bluetooth/common/BluetoothManager.cpp => dom/bluetooth/common/webapi/BluetoothManager.cpp
rename : dom/bluetooth/common/BluetoothManager.h => dom/bluetooth/common/webapi/BluetoothManager.h
rename : dom/bluetooth/common/BluetoothPairingHandle.cpp => dom/bluetooth/common/webapi/BluetoothPairingHandle.cpp
rename : dom/bluetooth/common/BluetoothPairingHandle.h => dom/bluetooth/common/webapi/BluetoothPairingHandle.h
rename : dom/bluetooth/common/BluetoothPairingListener.cpp => dom/bluetooth/common/webapi/BluetoothPairingListener.cpp
rename : dom/bluetooth/common/BluetoothPairingListener.h => dom/bluetooth/common/webapi/BluetoothPairingListener.h
rename : dom/bluetooth/common/BluetoothPbapRequestHandle.cpp => dom/bluetooth/common/webapi/BluetoothPbapRequestHandle.cpp
rename : dom/bluetooth/common/BluetoothPbapRequestHandle.h => dom/bluetooth/common/webapi/BluetoothPbapRequestHandle.h
2015-08-21 15:15:41 +08:00
Ben Tian
44c939383c Bug 1193379 - Rename bluetooth2 folder to common. r=joliu
--HG--
rename : dom/bluetooth/bluetooth2/BluetoothAdapter.cpp => dom/bluetooth/common/BluetoothAdapter.cpp
rename : dom/bluetooth/bluetooth2/BluetoothAdapter.h => dom/bluetooth/common/BluetoothAdapter.h
rename : dom/bluetooth/bluetooth2/BluetoothClassOfDevice.cpp => dom/bluetooth/common/BluetoothClassOfDevice.cpp
rename : dom/bluetooth/bluetooth2/BluetoothClassOfDevice.h => dom/bluetooth/common/BluetoothClassOfDevice.h
rename : dom/bluetooth/bluetooth2/BluetoothDevice.cpp => dom/bluetooth/common/BluetoothDevice.cpp
rename : dom/bluetooth/bluetooth2/BluetoothDevice.h => dom/bluetooth/common/BluetoothDevice.h
rename : dom/bluetooth/bluetooth2/BluetoothDiscoveryHandle.cpp => dom/bluetooth/common/BluetoothDiscoveryHandle.cpp
rename : dom/bluetooth/bluetooth2/BluetoothDiscoveryHandle.h => dom/bluetooth/common/BluetoothDiscoveryHandle.h
rename : dom/bluetooth/bluetooth2/BluetoothGatt.cpp => dom/bluetooth/common/BluetoothGatt.cpp
rename : dom/bluetooth/bluetooth2/BluetoothGatt.h => dom/bluetooth/common/BluetoothGatt.h
rename : dom/bluetooth/bluetooth2/BluetoothGattCharacteristic.cpp => dom/bluetooth/common/BluetoothGattCharacteristic.cpp
rename : dom/bluetooth/bluetooth2/BluetoothGattCharacteristic.h => dom/bluetooth/common/BluetoothGattCharacteristic.h
rename : dom/bluetooth/bluetooth2/BluetoothGattDescriptor.cpp => dom/bluetooth/common/BluetoothGattDescriptor.cpp
rename : dom/bluetooth/bluetooth2/BluetoothGattDescriptor.h => dom/bluetooth/common/BluetoothGattDescriptor.h
rename : dom/bluetooth/bluetooth2/BluetoothGattServer.cpp => dom/bluetooth/common/BluetoothGattServer.cpp
rename : dom/bluetooth/bluetooth2/BluetoothGattServer.h => dom/bluetooth/common/BluetoothGattServer.h
rename : dom/bluetooth/bluetooth2/BluetoothGattService.cpp => dom/bluetooth/common/BluetoothGattService.cpp
rename : dom/bluetooth/bluetooth2/BluetoothGattService.h => dom/bluetooth/common/BluetoothGattService.h
rename : dom/bluetooth/bluetooth2/BluetoothLeDeviceEvent.cpp => dom/bluetooth/common/BluetoothLeDeviceEvent.cpp
rename : dom/bluetooth/bluetooth2/BluetoothLeDeviceEvent.h => dom/bluetooth/common/BluetoothLeDeviceEvent.h
rename : dom/bluetooth/bluetooth2/BluetoothManager.cpp => dom/bluetooth/common/BluetoothManager.cpp
rename : dom/bluetooth/bluetooth2/BluetoothManager.h => dom/bluetooth/common/BluetoothManager.h
rename : dom/bluetooth/bluetooth2/BluetoothPairingHandle.cpp => dom/bluetooth/common/BluetoothPairingHandle.cpp
rename : dom/bluetooth/bluetooth2/BluetoothPairingHandle.h => dom/bluetooth/common/BluetoothPairingHandle.h
rename : dom/bluetooth/bluetooth2/BluetoothPairingListener.cpp => dom/bluetooth/common/BluetoothPairingListener.cpp
rename : dom/bluetooth/bluetooth2/BluetoothPairingListener.h => dom/bluetooth/common/BluetoothPairingListener.h
rename : dom/bluetooth/bluetooth2/BluetoothProfileController.cpp => dom/bluetooth/common/BluetoothProfileController.cpp
rename : dom/bluetooth/bluetooth2/BluetoothProfileController.h => dom/bluetooth/common/BluetoothProfileController.h
rename : dom/bluetooth/bluetooth2/BluetoothReplyRunnable.cpp => dom/bluetooth/common/BluetoothReplyRunnable.cpp
rename : dom/bluetooth/bluetooth2/BluetoothReplyRunnable.h => dom/bluetooth/common/BluetoothReplyRunnable.h
rename : dom/bluetooth/bluetooth2/BluetoothService.cpp => dom/bluetooth/common/BluetoothService.cpp
rename : dom/bluetooth/bluetooth2/BluetoothService.h => dom/bluetooth/common/BluetoothService.h
2015-08-21 15:19:12 +08:00
Ryan VanderMeulen
4ff4f84ce2 Merge inbound to m-c. a=merge 2015-08-27 11:43:16 -04:00
Till Schneidereit
36af475fe5 Bug 1198193 - Change all functions taking CallArgs to take const CallArgs& instead. r=Waldo
--HG--
extra : rebase_source : b7cd505c80b34d33d98e336490b117792030d9d5
2015-08-27 21:18:37 +02:00
Yoshi Huang
e6070e9062 Bug 1165272 - Part 2: replace getNoAppCodebasePrincipal. r=bholley 2015-08-18 15:01:42 +08:00
Nick Fitzgerald
f64a2b8739 Bug 1197970 - Expose the GC cycle's number through Debugger.Memory's onGarbageCollection hook. r=sfink 2015-08-26 10:13:00 -04:00
Bobby Holley
edfe287f26 Backed out 3 changesets (bug 1165272) for b2g sanity blocker. 2015-08-25 11:16:21 -07:00
Till Schneidereit
8614310b85 Bug 1070767 - Enable {Array, %TypedArray%}.prototype.includes in all builds. r=lth 2015-08-25 12:57:21 +02:00
Yoshi Huang
de47f4b89f Bug 1165272 - Part 2: Replace getNoAppCodebasePrincipal. r=bholley 2015-08-24 01:18:00 -04:00
David Rajchenbach-Teller
eaa230b89d Bug 1181175 - Use RDTSC for Performance Monitoring instead of getrusage. r=jandem
--HG--
extra : transplant_source : %7B%82%94E%8C%0AW%07%C2/n8%07%FD%95mt%03%EBM
2015-08-17 14:57:23 +02:00
Ryan VanderMeulen
0169e05964 Merge inbound to m-c. a=merge 2015-08-17 09:06:59 -04:00
Ben Tian
a0a229d80d Bug 1192693 - [02] Remove bluetooth1 folder and rename webidl files, r=joliu, r=mrbkap
--HG--
rename : dom/webidl/BluetoothAdapter2.webidl => dom/webidl/BluetoothAdapter.webidl
rename : dom/webidl/BluetoothDevice2.webidl => dom/webidl/BluetoothDevice.webidl
rename : dom/webidl/BluetoothManager2.webidl => dom/webidl/BluetoothManager.webidl
2015-08-17 15:30:34 +08:00
Bill McCloskey
ac32aef2fb Bug 1189125 - Allow xpcshell to use GTK (r=karlt) 2015-08-14 15:51:19 -07: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
Jan de Mooij
eed2b5bfff Bug 1185653 - Fix enumerate hook on unboxed objects to skip non-enumerable properties. r=jorendorff
--HG--
extra : rebase_source : 4f359cb0b34ee5a92afcb983ec765c92eaa1d162
2015-08-11 17:42:56 +02:00
Kyle Huey
76e3009ab8 Bug 1179909: Refactor stable state handling. r=smaug
This is motivated by three separate but related problems:

1. Our concept of recursion depth is broken for things that run from AfterProcessNextEvent observers (e.g. Promises). We decrement the recursionDepth counter before firing observers, so a Promise callback running at the lowest event loop depth has a recursion depth of 0 (whereas a regular nsIRunnable would be 1). This is a problem because it's impossible to distinguish a Promise running after a sync XHR's onreadystatechange handler from a top-level event (since the former runs with depth 2 - 1 = 1, and the latter runs with just 1).

2. The nsIThreadObserver mechanism that is used by a lot of code to run "after" the current event is a poor fit for anything that runs script. First, the order the observers fire in is the order they were added, not anything fixed by spec. Additionally, running script can cause the event loop to spin, which is a big source of pain here (bholley has some nasty bug caused by this).

3. We run Promises from different points in the code for workers and main thread. The latter runs from XPConnect's nsIThreadObserver callbacks, while the former runs from a hardcoded call to run Promises in the worker event loop. What workers do is particularly problematic because it means we can't get the right recursion depth no matter what we do to nsThread.

The solve this, this patch does the following:

1. Consolidate some handling of microtasks and all handling of stable state from appshell and WorkerPrivate into CycleCollectedJSRuntime.
2. Make the recursionDepth counter only available to CycleCollectedJSRuntime (and its consumers) and remove it from the nsIThreadInternal and nsIThreadObserver APIs.
3. Adjust the recursionDepth counter so that microtasks run with the recursionDepth of the task they are associated with.
4. Introduce the concept of metastable state to replace appshell's RunBeforeNextEvent. Metastable state is reached after every microtask or task is completed. This provides the semantics that bent and I want for IndexedDB, where transactions autocommit at the end of a microtask and do not "spill" from one microtask into a subsequent microtask. This differs from appshell's RunBeforeNextEvent in two ways:
a) It fires between microtasks, which was the motivation for starting this.
b) It no longer ensures that we're at the same event loop depth in the native event queue. bent decided we don't care about this.
5. Reorder stable state to happen after microtasks such as Promises, per HTML. Right now we call the regular thread observers, including appshell, before the main thread observer (XPConnect), so stable state tasks happen before microtasks.
2015-08-11 06:10:46 -07:00
Ryan VanderMeulen
a7ea8705c1 Backed out changesets db4294fb662d and de9ae2ccb73b (bug 1181175) for Android test_compartments.js failures.
CLOSED TREE
2015-08-10 15:07:27 -04:00
David Rajchenbach-Teller
d326242e8b Bug 1181175 - Use RDTSC for Performance Monitoring instead of getrusage. r=jandem
--HG--
extra : transplant_source : %8D%A9%CC%17Dj9-%81T%B2%0D%E1%EA%BD%05%C7%DCl%CB
2015-07-07 18:45:54 +02:00
Birunthan Mohanathas
7315345693 Bug 1191100 - Remove XPIDL signature comments in .cpp files. r=ehsan
Comment-only so DONTBUILD.
2015-08-04 16:17:36 -07:00
Andrew McCreight
c3dc941170 Bug 1190436 - Part 2: Use an early return in XPCConvert::JSObject2NativeInterface. r=gabor 2015-08-03 11:48:00 -04:00
Andrew McCreight
074f97cf4c Bug 1190436 - Part 1: Use more smart pointers in XPConnect. r=gabor 2015-08-03 11:47:00 -04:00
Andrew McCreight
411609d79a Bug 1155773 - Remove gotos from XPCConvert::NativeArray2JS(). r=bholley
--HG--
extra : rebase_source : 4025b380f63bf87dae43becde7b5cf21ffc4ac0a
2015-08-03 11:47:00 +02:00
Nicholas Nethercote
d98d14fa1e Bug 1189156 (part 4) - Don't use enumeration style for nsBaseHashtable::SizeOf{In,Ex}cludingThis(). r=erahm,jfkthame.
After this change, we have ShallowSizeOf{In,Ex}cludingThis(), which don't do
anything to measure children. (They can be combined with iteration to measure
children.)

--HG--
extra : rebase_source : f98420176f50990bbc5a25e35788328154cfeb00
2015-07-30 21:19:57 -07:00
Boris Zbarsky
57621e1167 Bug 1135961. Implement subclassing of DOM objects. r=peterv 2015-07-31 13:30:55 -04:00
Nicholas Nethercote
2d56c1f52e Bug 1189156 (part 1) - Don't use enumeration style for PLDHashTable::SizeOf{In,Ex}cludingThis(). r=froydnj.
After this change, we have PLDHashTable::ShallowSizeOf{In,Ex}cludingThis(),
which don't do anything to measure children. (They can be combined with
iteration to measure children.)

This patch also removes the PL_DHashTableSizeOf{In,Ex}cludingThis() functions.
They're not necessary because the methods can be used instead.

Finally, the patch deliberately converts some SizeOfExcludingThis() calls to
SizeOfIncludingThis(). These are all done on heap pointers so this change is
valid.

--HG--
extra : rebase_source : b1d51096a8e7dcac29d7efd92e28938836ff5481
2015-07-29 22:28:20 -07:00
Alexandre Poirot
5f9afbc4de Bug 1182194 - Convert LayoutHelpers.jsm into a commonjs module. r=jwalker
--HG--
rename : toolkit/devtools/LayoutHelpers.jsm => toolkit/devtools/layout-helpers.js
2015-07-30 06:14:08 -07:00
Mike Kaply
68b080c7c5 Bug 1152512 - Use the latest JavaScript version when parsing AutoConfig files. r=mrbkap
--HG--
extra : rebase_source : 4527671894b43e60e16d4b6be5e6af55b68b6ebe
2015-07-28 13:57:55 -05:00
Andrew McCreight
6e8552d49a Bug 1185527 - Split out a refcountless base class for nsScriptError. r=gabor
This avoids shadowing the refcount if nsScriptErrorWithScript inherited from nsScriptError.
2015-07-28 16:51:10 -04:00
Carsten "Tomcat" Book
ce5ca9b688 Backed out changeset 0afe24f16cf4 (bug 1152512) for bustage 2015-07-28 14:38:01 +02:00
Mike Kaply
1acb520ff0 Bug 1152512 - Use the latest JavaScript version when parsing AutoConfig files. r=mrbkap 2015-07-28 07:13:26 -05:00
Giovanny Andres Gongora Granada
2e800a3fea Bug 1150312 - Remove MOZ_SHARK. r=glandium 2015-07-23 18:16:00 -04:00
Tom Tromey
9f3b16bf4c Bug 1148593 - Create async stack in callback objects. r=bz, r=fitzgen
--HG--
extra : rebase_source : f9b507d8f005dbca6f40f510ca41a0cbb03aebf9
2015-07-24 07:01:00 -04:00
Andrew McCreight
95bead4668 Bug 1187410 - Use GetNameShared() in XPCNativeInterface::NewInstance() to avoid a leak. r=mrbkap
GetName() returns a new string, but that string is never freed.

This patch avoids the leak by not copying the string. This is okay because
the scope of intfNameChars is within the scope of aInfo.
2015-07-26 14:26:23 -07:00
Bobby Holley
4dac367856 Bug 1186213 - Add an API to deep-freeze the result of Cu.cloneInto. r=gkrizsanits 2015-07-21 14:57:00 +02:00
Terrence Cole
f0591ea02e Bug 1186156 - Move the PersistentRooted list heads into RootLists; r=sfink 2015-07-09 14:13:10 -07:00
Andrew McCreight
13e2d3a560 Bug 931571, part 13 - Add a destructor for nsDiscriminatedUnion. r=froydnj
The existing nsDiscriminateUnions either always call Cleanup() when they
are about to go away, or they only handle scalar values so it is safe to
call Cleanup() on them without worrying about another discriminated union
having taken over any memory owned by this union.
2015-07-23 12:28:30 -07:00
Andrew McCreight
0994e4e4ed Bug 931571, part 12 - Add nsDiscriminatedUnion::GetType(). r=froydnj
This is not quite enough to make the data members private because
XPCVariant pokes around to do some JS array stuff.
2015-07-23 12:28:30 -07:00
Andrew McCreight
4bdbcd2020 Bug 931571, part 11 - Turn nsDiscriminatedUnion's Traverse function into a method. r=froydnj 2015-07-23 12:28:30 -07:00
Andrew McCreight
cb922209d3 Bug 931571, part 9 - Turn most of the nsVariant setters into nsDiscriminated methods. r=froydnj
This also adds a new nsDiscriminatedUnion method SetFromDOMString, as somebody added an nsVariant method without the corresponding helper.
2015-07-23 12:28:30 -07:00
Andrew McCreight
8c28737b59 Bug 931571, part 8 - Turn ConvertToISupports, ConvertToInterface and ConvertToArray to methods. r=froydnj 2015-07-23 12:28:30 -07:00
Andrew McCreight
219f81d45f Bug 931571, part 7 - Turn ConvertTo*String and ToString into methods. r=froydnj 2015-07-23 12:28:30 -07:00
Andrew McCreight
83b488957d Bug 931571, part 6 - Make ConvertToID and String2ID into methods. r=froydnj 2015-07-23 12:28:30 -07:00
Andrew McCreight
6c297a19d4 Bug 931571, part 5 - Turn basic ConvertTo functions into methods. r=froydnj 2015-07-23 12:28:30 -07:00
Andrew McCreight
ca92d9ebc0 Bug 931571, part 2 - Convert Cleanup() and FreeArray() to methods. r=froydnj 2015-07-23 12:28:29 -07:00
Andrew McCreight
7b7d1a30b8 Bug 931571, part 1 - Use a constructor for nsDiscriminatedUnion. r=froydnj 2015-07-23 12:28:29 -07:00
Andrew McCreight
621e57b2b7 Bug 1176341 - De-holder nsIXPConnect::CreateSandbox. r=baku,gabor 2015-07-21 11:31:44 -07:00
Ryan VanderMeulen
fb3e0b058e Backed out changeset 553a3e1e7b18 (bug 1176341) for bustage.
CLOSED TREE
2015-07-21 13:00:55 -04:00
Andrew McCreight
5cbc3abf39 Bug 1176341 - De-holder nsIXPConnect::CreateSandbox. r=baku,gabor 2015-07-21 09:44:37 -07:00
Andrew McCreight
6ea0227583 Bug 1185144 - nsConsoleService::LogMessageWithMode() should release the retired message on the main thread. r=froydnj
Also, add release asserts that the other methods that addref or release console messages are only run on the main thread.

Finally, add an assert that nsScriptErrorWithStack is only created on the main thread.
2015-07-21 07:50:09 -07:00
Andrew McCreight
d0c5cd2fd1 Bug 1185634 - Part 2: Remove obsolete comment. r=gabor 2015-07-20 11:46:00 -04:00
Andrew McCreight
a2bd54bd1d Bug 1185634 - Part 1: SandboxPrivate shouldn't be public. r=gabor
--HG--
rename : js/xpconnect/public/SandboxPrivate.h => js/xpconnect/src/SandboxPrivate.h
2015-07-20 11:46:00 -04:00
Andrew McCreight
39839cde51 Bug 1185056 - Use the normal CC macros for XPCWrappedNative. r=smaug 2015-07-17 14:14:00 +02:00
Jan de Mooij
250652b04a Bug 1184564 part 1 - Use Value instead of jsval in XPConnect. r=bholley 2015-07-18 21:45:35 +02:00
Brian Hackett
cd9e31dcba Bug 1183480 - Return old timeout value in setScriptTimeout(), r=bholley. 2015-07-17 09:45:08 -07: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
843465db8e Bug 1148593 - Create async stack in callback objects. r=bz, r=fitzgen 2015-07-17 07:48:00 -04:00
Kyle Huey
74f03750da Bug 1182316: Part 3 - Add assertions to most other WebIDL entry points, clean up nsIDOMJSWindow cruft. r=peterv 2015-07-16 22:10:35 -07:00
Andrew McCreight
7102f1c26b Bug 1184400, part 3 - Use HasExternalReference in XPCWrappedNative::Traverse. r=bholley
This is just for consistency.
2015-07-16 17:50:43 -07:00
Andrew McCreight
52b10c8714 Bug 1184400, part 2 - XPCWrappedNative::Suspect() should suspect the JS reflector object even if it doesn't own it. r=bholley 2015-07-16 17:50:43 -07:00
Andrew McCreight
e7070f39fe Bug 1184400, part 1 - Make XPCJSRuntime::SuspectWrappedNative into a method on XPCWrappedNative. r=bholley 2015-07-16 17:50:43 -07:00
Andrew McCreight
f3d75a224c Bug 1184630 - Remove the unused XPCWrappedNative::LocateTearOff(). r=gabor
Also, remove some redundant access specifiers in XPCWrappedNative.
2015-07-16 17:50:43 -07:00
Jason Orendorff
b99588d3e5 Bug 987514, part 4 - Implement most of the standard Reflect methods. r=Waldo.
Reflect.construct will be added in bug 1178932.

Reflect.enumerate is not implemented because we do not implement the underlying internal method to spec yet.

--HG--
extra : rebase_source : 47f533df6e2b4f38b3812c1ce955fa90ce055a75
2014-11-05 00:32:29 -06:00
Jason Orendorff
3a5f570d6f Bug 987514, part 3 - Make every global have a (usually empty) Reflect object; rename JS_InitReflect -> JS_InitReflectParse. r=Waldo.
The bit in MIRGenerator.h fixes a straight-up bug in the code, masked until now by unified builds (and unmasked because this patch adds a .cpp file, perturbing the unified build boundaries).

--HG--
extra : rebase_source : aa6bf55dc1ce87b9fc10af76cb506560b14c3de9
2014-11-04 21:41:43 -06:00
Bobby Holley
c8b6dbffb7 Bug 1184382 - Handle a sandboxPrototype we don't subsume. r=gabor 2015-07-16 11:24:18 -07:00
Daniel Holbert
c81b996b3b Bug 814497 followup: Add missing 'override' keyword to nsScriptErrorWithStack method 'GetStack'. rs=ehsan 2015-07-15 17:23:53 -07:00
Bobby Holley
f26bc6851d Bug 1182357 - Implement support for optional size_is for arrays passed from JS. r=mrbkap
The fact that the caller needs to pass this is just an artifact of the clunky
XPIDL type system. This should let us make nicer APIs.
2015-07-15 16:59:08 -07:00
Wes Kocher
c3eedd62ae Merge m-c to inbound, a=merge CLOSED TREE 2015-07-15 16:41:49 -07:00
Alexandre Poirot
ec268220f2 Bug 814497 - Fix nsScriptErrorWithStack constructor. r=ehsan 2015-07-15 09:58:26 -07:00
Bobby Holley
e53c744803 Bug 1182409 - Add 'allowWaivers' sandbox option. r=gabor 2015-07-15 11:32:30 -07:00
Alexandre Poirot
18efabed2b Bug 814497 - Pass SavedFrame from JS::ErrorObject to nsIScriptError. r=bholley 2015-07-09 07:02:00 -04:00
Birunthan Mohanathas
a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Geoff Brown
52d4e225a0 Bug 1026290 - Update mochitest-chrome manifests for android; r=jgriffin 2015-07-10 14:41:59 -06:00
Wes Kocher
d8780b2a3f Backed out changeset 74293125739a (bug 1176341) 2015-07-10 12:48:20 -07:00
Andrew McCreight
8047284e97 Bug 1176341 - De-holder nsIXPConnect::CreateSandbox. r=baku,gabor 2015-07-10 07:41:33 -07: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