Commit Graph

16695 Commits

Author SHA1 Message Date
Stone Shih
e98f4338b7 Bug 1351148 Part10: nsChainedEventQueue::PutEvent should always put high priority event in mHighQueue. r=smaug.
MozReview-Commit-ID: H6TV9bdm6QM
2017-07-26 10:52:06 +08:00
Henry Chang
31e6f23f84 Bug 1355746 - Part 3. Test cases for IdleTaskRunner. r=smaug
MozReview-Commit-ID: 3RsC1pT9Fzc

--HG--
extra : rebase_source : 0e809780c75c9b8115e7242822ba1d44a1a0fe5d
extra : intermediate-source : 0a7daa942672d158b160b3e1af3ddbb88b36c953
extra : source : 08210ea8446bd222cda5c19ee326f8ffdbb65b3f
2017-07-12 14:13:44 +08:00
Henry Chang
55356f4f83 Bug 1355746 - Part 2. Polish IdleTaskRunner and reuse it for background parsing. r=smaug
This patch is mainly to make IdleTaskRunner reusable by nsHtml5TreeOpExecutor.
The only necessary work to that purpose is to remove the dependency of
sShuttingDown, which was a static variable in nsJSEnvironment.cpp.
The idea is to have a "MayStopProcessing" as a callback for the consumer to
return sShuttingDown.

In addition to sShuttingDown, we use std::function<bool()> as the runner
main callback type.

MozReview-Commit-ID: FT2X1unSvPS

--HG--
extra : rebase_source : 3fe2d4f597f53e9a90f3dc8d5009df04240534ba
extra : intermediate-source : 41f6715c344ce26f7820cecb2544db8c50dca796
extra : source : 042f10937305e34245bdaf75dcb816db7738254e
2017-07-12 09:23:15 +08:00
Henry Chang
fab3d4644c Bug 1355746 - Part 1. Rename CollectRunner to IdleTaskRunner and move to xpcom/threads/IdleTaskRunner.h/cpp r=smaug
Nothing is changed in this patch except for renaming and code move around.
The strategy is to have the final file setup in this patch without any
detail change. The actual code change will be in the next patch so that
we can focus on reviewing the diff in the next patch regarding IdleTaskRunner.

MozReview-Commit-ID: 4Bul9mZ7z1n

--HG--
extra : rebase_source : b978da3a3c68da58f9fd93502bcc4295acd699ce
extra : source : 833d4b69accbf7d1d60f9f11d807ee37d608b6fe
2017-08-07 13:50:47 +08:00
Nathan Froyd
438b1b37eb Bug 1380619 - avoid unnecessary content process leaks in SchedulerGroup dispatch during shutdown; r=mystor
SchedulerGroup dispatch needs to replicate all the quirks of dispatching
directly to threads, which means we need to handle cases where dispatch
might have failed and we have resources that we don't want to leak.
2017-08-09 14:12:44 -04:00
Emilio Cobos Álvarez
9f02c96781 Bug 1362338: Make nsIAtom::AddRef and nsIAtom::Release final. r=froydnj
MozReview-Commit-ID: CFWcSNocGIm

--HG--
extra : rebase_source : 6b8e28f76e2d4fff13f3a89ac68388a0b090bf74
2017-08-09 14:20:17 +02:00
Ryan VanderMeulen
cc7a4548cc Backed out 3 changesets (bug 1376038) to see if it affects the ghost window numbers in bug 1388111.
Backed out changeset b89df6ea668a (bug 1376038)
Backed out changeset ae6472c17577 (bug 1376038)
Backed out changeset 8c99b4e8e6c1 (bug 1376038)
2017-08-07 21:11:42 -04:00
Henry Chang
af3b11c151 Bug 1375277 - New safebrowsing threat type "POTENTIALLY_HARMFUL_APPLICATION" introduced by v4. r=francois
As our threattype-listname conversion design, "goog-harmful-proto" is allocated
for this new threat type. This threat type is mainly for mobile.

MozReview-Commit-ID: G9GbgmHHHfp

--HG--
extra : rebase_source : 0681fcd9322b94451a86eafe57bf1ccc4b89db30
extra : intermediate-source : 28b0502d9add81beeae58a2c33f9fd5839d4d544
extra : source : 646f02f15131aa98ad37015b0a641304a3271796
2017-07-27 15:37:57 +08:00
Masatoshi Kimura
06311d2e3a Bug 1375125 - Remove nsILocalFile. r=froydnj
MozReview-Commit-ID: 6oU6Ya5UXtC

--HG--
extra : rebase_source : 55b6e30aa348c1b939326698b0da7d72c26b479c
2017-08-05 09:43:49 +09:00
Masatoshi Kimura
f6b1dc1043 Bug 1375125 - Fix errors caused by mechanical replacement. r=froydnj
MozReview-Commit-ID: 1kOvLdeCJiR

--HG--
extra : rebase_source : 94b04b16ac5d951600d31d1cdb78b494d8275ad1
2017-08-05 08:21:55 +09:00
Masatoshi Kimura
8b713b2b0f Bug 1375125 - Stop using nsILocalFile in the tree. r=froydnj
This mechanically replaces nsILocalFile with nsIFile in
*.js, *.jsm, *.sjs, *.html, *.xul, *.xml, and *.py.

MozReview-Commit-ID: 4ecl3RZhOwC

--HG--
extra : rebase_source : 412880ea27766118c38498d021331a3df6bccc70
2017-08-04 17:49:22 +09:00
Masatoshi Kimura
49e04cc095 Bug 1149830 - Remove nsIStackFrame::language. r=bz,mccr8
MozReview-Commit-ID: LxTiLFzNJ9Y

--HG--
extra : rebase_source : 98ca14aa59a62309dcbe0c9ed3e961c730ff9db9
2017-08-03 15:50:07 +09:00
Sebastian Hengst
765cc1b925 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: JhesEg4Bxjy
2017-08-04 19:28:27 +02:00
Nicholas Nethercote
4f49ba4241 Bug 1386962 - Remove template code from XPIDL generated header files. r=froydnj.
XPIDL generated header files contain a |#if 0| block for every interface,
providing the skeleton of the class as it must be implemented in C++. This is
potentially useful, but also very verbose.

This patch removes this code. In a Linux64 debug build, this reduces the total
size of the $OBJDIR/dist/include/nsI*.h files from 11,023,499 bytes to
8,442,350 bytes, a 23.5% reduction. It didn't speed up compilation, though.

--HG--
extra : rebase_source : 65e1e46cffe7c831d83c3308d7ce58c801618dda
2017-08-03 17:05:01 +10:00
Bill McCloskey
75f4342e31 Bug 1364821 - Fix bustage
MozReview-Commit-ID: 3Z5A1FmvBm3
2017-08-03 15:17:11 -07:00
Bill McCloskey
5466ff7e51 Bug 1386893 - Update AbstractThread thread safety assertions to work with cooperative threading (r=jwwang)
MozReview-Commit-ID: 72xKyWOUXL5
2017-08-03 14:19:04 -07:00
Bill McCloskey
2273c53b75 Bug 1364821 - Introduce AbstractThread::AutoEnter and remove main thread's AbstractThread::GetCurrent() (r=jwwang)
MozReview-Commit-ID: FSLVn7xe3sq
2017-08-03 14:19:02 -07:00
Sebastian Hengst
d883695275 Backed out changeset aee8226f7f98 (bug 1380154) for failing OS X and Linux static at xpcom/ds/Dafsa.h:35 with 'constexpr constructor never produces a constant expression'. r=backout on a CLOSED TREE 2017-08-03 09:18:21 +02:00
Eric Rahm
09ade48fd7 Bug 1380154 - Part 1: Add the Chromium DAFSA generator. r=njn
This imports Chromium's `make_dafsa.py` script [1]. It takes in a gperf
formatted file (note: gperf is *not* required) and converts that to a compact
binary representation of the string data in the form of a deterministic
acyclic finite state automaton (DAFSA) [2].

The only change made to the script was to make it handle the arguments our
file generation script passes in to the `main` function.

It also imports the logic for traversing the DAFSA [3] almost verbatim in
`Dafsa.cpp`. A thin wrapper was added so that we can reuse the DAFSA structure
for multiple tables.

The only change made to the original logic was to swap in mozilla style
assertions and rename the not found constant from `kNotFound` to
`Dafsa::kKeyNotFound` in order to avoid a collision with `kNotFound` defined in
our nsString code.

[1] 6ba04a9056/tools/dafsa/make_dafsa.py
[2] https://en.wikipedia.org/wiki/Deterministic_acyclic_finite_state_automaton
[3] a2a90a35aa/net/base/registry_controlled_domains/registry_controlled_domain.cc (72)

MozReview-Commit-ID: Eion9POHZm5
2017-07-17 16:09:42 -07:00
Nicholas Nethercote
819537ad59 Bug 1386499 - Remove some nsXPIDLCString uses from nsComponentManager. r=erahm.
ToProvidedString() is a better fit for this code, anyway.

--HG--
extra : rebase_source : 052317a7075c7325cba7edc9390d0b8d04273ae1
2017-08-02 14:27:25 +10:00
Wes Kocher
851b59bdbe Merge m-c to inbound a=merge
MozReview-Commit-ID: 1p4eNdfSz9p
2017-08-02 17:46:32 -07:00
Wes Kocher
baf6cddc4c Merge inbound to central, a=merge
MozReview-Commit-ID: 9NFjSEt96iT
2017-08-02 17:11:51 -07:00
ffxbld
f0e4ae5f8c Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2017-08-02 09:12:05 +01:00
Nathan Froyd
84951ded23 Bug 1386476 - avoid unnecessary checks in nsTArray::AppendElement; r=erahm
nsTArray::AppendElement{,s} uses an IncrementLength method to adjust the
length of the array after appending elements.  There are checks in
IncrementLength to ensure that we're not incrementing the length stored
in the static empty header object; these checks are necessary in cases
such as appending a zero-length array to another zero-length array.

But we do not need this check when we're calling AppendElement: we know
the header is obviously not the empty header, because we increased the
length of the array by one for the newly appended element.  Incrementing
the length can therefore be inlined, saving ~90K of codesize on x86-64
Linux.
2017-08-02 19:21:23 -04:00
Nicholas Nethercote
08e54b7c13 Bug 1384819 (part 1) - Split MozStackWalk(). r=glandium.
MozStackWalk() is different on Windows to the other platforms. It has two extra
arguments, which can be used to walk the stack of a different thread.

This patch makes those differences clearer. Instead of having a single function
and forbidding those two arguments on non-Windows, it removes those arguments
from MozStackWalk, and splits off MozStackWalkThread() which retains them. This
also allows those arguments to have more appropriate types (HANDLE instead of
uintptr_t; CONTEXT* instead of than void*) and names (aContext instead of
aPlatformData).

The patch also removes unnecessary reinterpret_casts for the aClosure argument
at a couple of MozStackWalk() callsites.

--HG--
extra : rebase_source : 111ab7d6426d7be921facc2264f6db86c501d127
2017-07-27 12:46:47 +10:00
Sebastian Hengst
ddd4030358 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: IrMqWiJhwan
2017-08-01 11:23:57 +02:00
Nicholas Nethercote
3ab0f8b30f Bug 1384834 (part 4) - Improve comments for Adopt() and getter_Copies(). r=erahm.
--HG--
extra : rebase_source : a7bb27bbdade092bd087a014d31d9c6d019e1d72
2017-08-01 06:06:36 +10:00
Andrew McCreight
5eecb0df0a Bug 1385474 - Avoid QIing for NoteXPCOMRoot. r=smaug
This callback is only used in very limited ways, so just require that
the caller pass in the canonical supports pointer, plus the
participant. This probably won't affect performance much.

MozReview-Commit-ID: CsThzFsKyYx

--HG--
extra : rebase_source : 9595b1d75fc45bc5ee6d932a840e98b5d760cb78
2017-07-28 16:11:03 -07:00
Nicholas Nethercote
e5d1c73749 Bug 1384834 (part 3) - Remove nsAdopting[C]String. r=erahm.
--HG--
extra : rebase_source : a87c357fb0166620a33a40e1a01af32d5e7a907d
2017-07-28 11:21:49 +10:00
Wes Kocher
3c2dc39278 Merge m-c to inbound, a=merge
MozReview-Commit-ID: BgPWEtPV0sy
2017-07-31 17:49:47 -07:00
Wes Kocher
179a07b6ba Merge inbound to central, a=merge
MozReview-Commit-ID: Dg4fbH8wbXt
2017-07-31 17:43:38 -07:00
Sebastian Hengst
66a3f61e13 Backed out changeset 58cfaca894a9 (bug 1384821) for bustage at nsCycleCollectionParticipant.h:312: 'const nsIID' has no member named 'LowWordEquals'. r=backout on a CLOSED TREE 2017-07-31 19:04:32 +02:00
Ehsan Akhgari
f500c91790 Bug 1384821 - Optimize inherited cycle-collectible QueryInterface() implementations for nsCycleCollectionISupports; r=peterv 2017-07-31 12:46:46 -04:00
Andrew McCreight
23896c49cb Bug 1385459 - Don't use QI to canonicalize nsISupports pointers in the purple buffer. r=smaug
The nsISupports objects added to the purple buffer are already
canonical, so we can avoid some overhead by not QIing them to
nsCycleCollectionISupports. This QIing overhead shows up in profiles.

MozReview-Commit-ID: CQN6wwc7MZm

--HG--
extra : rebase_source : 27e6b70f83b42b5db7af3d1e7d62e36d6f4013a0
2017-07-28 15:24:17 -07:00
Sebastian Hengst
915c63c332 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-07-31 11:28:37 +02:00
Nicholas Nethercote
72c884bf74 Bug 1384835 (part 3, attempt 2) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj.
--HG--
extra : rebase_source : d317b25be2ec21d1a60d25da3689e46cdce0b649
2017-07-31 14:28:48 +10:00
Nicholas Nethercote
581214bd8b Bug 1384835 (part 1, attempt 2) - Use nsA[C]String references instead of pointers for outparams of Get*String() pref functions. r=froydnj.
--HG--
extra : rebase_source : fe566945a55c281d8290634a5b55bed19415c839
2017-07-31 10:52:51 +10:00
Kyle Machulis
ffa9be1bed Bug 1279218 - Remove Applet tag; r=bz
Removes applet tag interfaces, and changes HTML5 parser to output
HTMLUnknownElement when tag is found. Removes tag process from various
places in the browser.

MozReview-Commit-ID: 2zHhK2U2esX

--HG--
extra : rebase_source : d06ecaffd1cb656301e29b900bafde4c68a4606e
2017-07-10 16:00:30 -07:00
Bill McCloskey
55f153be76 Bug 1383328 - Use TabGroup as event target for browser-status-filter (r=smaug)
MozReview-Commit-ID: HOSmqr5Vpwh
2017-07-28 13:11:59 -07:00
Bill McCloskey
7e43e5439d Bug 1384395 - Use nsAutoOwningThread for mfbt/WeakPtr.h thread assertions (r=froydnj)
MozReview-Commit-ID: DF4DiffL4Qq
2017-07-28 13:11:44 -07:00
Bill McCloskey
c6c1f4bbc9 Bug 1385413 - Remove thread parameter from onDispatchedEvent (r=erahm)
This parameter isn't used by any implementation of onDispatchedEvent,
and keeping the parameter makes later refactorings in this bug more difficult.

MozReview-Commit-ID: 90VY2vYtwCW
2017-07-28 13:09:06 -07:00
Eric Rahm
5aeb1f0c4b Bug 1369002 - Stop warning if the mainThread is null in GetCurrentThread. r=froydnj 2017-06-20 09:51:29 -07:00
Ehsan Akhgari
50fd0b7a62 Bug 1385533 - Reserve space for one pointer in the mMutationObservers array on node slots; r=smaug
This helps avoid allocations for the first mutation observer (for example, Range)
created by a caller.
2017-07-31 17:12:38 -04:00
Ehsan Akhgari
276dde4613 Backout bug 1384821 for assertion failures 2017-07-31 14:23:31 -04:00
Ehsan Akhgari
b4ce93f7da Bug 1384821 - Optimize inherited cycle-collectible QueryInterface() implementations for nsCycleCollectionISupports; r=peterv 2017-07-31 13:56:48 -04:00
Stone Shih
393c62eba7 Bug 1351148 Part3: Synthesize native input events with priority. f=kats,smaug. r=smaug.
The test helper_touch_action_regions.html uses nsDOMWindowUtils to synthesize native input events and creates some runnables to trigger the test. It expects the runnables which synthesize native input events are processed first, then the runnables to continue the test, and finally the input events are forwarded from chrome process to content process. Enabling event prioritization may change the execution order.
Wraps those runnables to synthesize native input events as priority=input and dispatches those runnables to continue the test with priority=input to make sure the execution order is as expected.

MozReview-Commit-ID: 8hkaB1FRW9T
2017-05-19 15:41:24 +08:00
Stone Shih
b15ea606eb Bug 1351148 Part3: Synthesize native input events with priority. f=kats,smaug. r=smaug.
The test helper_touch_action_regions.html uses nsDOMWindowUtils to synthesize native input events and creates some runnables to trigger the test. It expects the runnables which synthesize native input events are processed first, then the runnables to continue the test, and finally the input events are forwarded from chrome process to content process. Enabling event prioritization may change the execution order.
Wraps those runnables to synthesize native input events as priority=input and dispatches those runnables to continue the test with priority=input to make sure the execution order is as expected.

MozReview-Commit-ID: 8hkaB1FRW9T
2017-05-19 15:41:24 +08:00
Cameron McCormack
a3c755c590 Bug 1381731 - Remove gUnusedAtomCount assertions since they're hard to get right given OMT atom refcounting. r=bholley
MozReview-Commit-ID: ByM6mzL1IgF

--HG--
extra : rebase_source : efa2f0e3c353a316c8035bf28868e0a321e1dfa2
2017-07-29 11:57:32 +08:00
Nicholas Nethercote
49eb219ff5 Bug 1383982 (attempt 2) - Introduce a general mechanism for measuring memory usage of graph-like structures. r=erahm.
--HG--
extra : rebase_source : 7075f9570a4262158351ce9ac3ca8360ea4d5394
2017-07-28 20:10:04 +10:00
Sebastian Hengst
d7527a414d Backed out changeset 07b534f44740 (bug 1384835) for failing xpcshell's security/manager/ssl/tests/unit/test_cert_sha1.js checkCertErrorGenericAtTime on Linux x64 debug. r=backout 2017-07-28 10:30:29 +02:00
Sebastian Hengst
744a0a216b Backed out changeset ef5feef07bed (bug 1384835) 2017-07-28 10:29:24 +02:00
Sebastian Hengst
9077ac8886 Backed out changeset a57d8f30d1bf (bug 1383982) for build bustage at nsGlobalWindow.cpp:13826: 'class nsWindowSizes' has no member named 'mMallocSizeOf'. r=backout 2017-07-28 09:50:48 +02:00
Carsten "Tomcat" Book
28bdd40776 Merge mozilla-central to mozilla-inbound 2017-07-28 09:48:24 +02:00
Carsten "Tomcat" Book
c24a288e9a Backed out changeset 420d9e53c959 (bug 1351148) for causing regressions / on request from stone 2017-07-28 09:20:54 +02:00
Carsten "Tomcat" Book
de369deb98 Backed out changeset 284af26c1b53 (bug 1351148) 2017-07-28 09:20:27 +02:00
Carsten "Tomcat" Book
6ddad46b40 Backed out changeset 1662b38e3107 (bug 1351148) 2017-07-28 09:20:23 +02:00
Carsten "Tomcat" Book
bd7b184c91 Backed out changeset e3e924da5d5f (bug 1383328) 2017-07-28 09:20:05 +02:00
Carsten "Tomcat" Book
6f0703e0c4 Backed out changeset 95c0feba19ec (bug 1369002) 2017-07-28 09:19:59 +02:00
Nicholas Nethercote
5c3abe8aab Bug 1383982 - Introduce a general mechanism for measuring memory usage of graph-like structures. r=erahm.
All the SizeOf{In,Ex}cludingThis() functions take a MallocSizeOf function
which measures memory blocks. This patch introduces a new type, SizeOfState,
which includes a MallocSizeOf function *and* a table of already-measured
pointers, called SeenPtrs. This gives us a general mechanism to measure
graph-like data structures, by recording which nodes have already been
measured. (This approach is used in a number of existing reporters, but not in
a uniform fashion.)

The patch also converts the window memory reporting to use SizeOfState in a lot
of places, all the way through to the measurement of Elements. This is a
precursor for bug 1383977 which will measure Stylo elements, which involve
Arcs.

The patch also converts the existing mAlreadyMeasuredOrphanTrees table in the
OrphanReporter to use the new mechanism.

--HG--
extra : rebase_source : 2c23285f8b6c3b667560a9d14014efc4633aed51
2017-07-28 15:03:44 +10:00
Carsten "Tomcat" Book
d360d49d2a merge mozilla-inbound to mozilla-central a=merge 2017-07-27 10:57:25 +02:00
Nicholas Nethercote
200d8ec18b Bug 1384835 (part 3) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj.
This is similar like the previous patch, but for the 8-bit string variants.
Also, it changes assignment to Adopt() in GetCString() and GetDefaultCString()
to avoid an extra copy.

--HG--
extra : rebase_source : eba805c3a7b809d5ccd6e853b1c9010db9477667
2017-07-27 16:45:10 +10:00
Nicholas Nethercote
f314cbcbe5 Bug 1384835 (part 1) - Use nsA[C]String references instead of pointers for outparams of Get*String() pref functions. r=froydnj.
This is basically a cosmetic change; references are the normal way to do string
outparams.

--HG--
extra : rebase_source : ffc5945f269bdcd3d4116755b56713e87a44b6cd
2017-07-25 19:12:56 +10:00
Markus Stange
1ab4633a9c Bug 1384631 - Make SystemGroup::Dispatch work early during startup, when it hasn't been initialized yet. r=billm
MozReview-Commit-ID: 4VUmmXPXor6

--HG--
extra : rebase_source : a4fa38e980d358beccfe23f2c91eb3c711c34d1f
extra : amend_source : 529bce651e2ae9a0c42be86e114f67bd04c29f34
2017-07-27 14:18:54 -04:00
Julian Seward
408d24da56 Bug 1382563 - Remove ns*String::AssignWithConversion. r=erahm.
This patch replaces four functions of the name AssignWithConversion which
are essentially wrappers around CopyASCIItoUTF16 and LossyCopyUTF16toASCII
with direct calls to the latter two functions.  The replaced functions are:

  void nsCString::AssignWithConversion( const nsAString& aData )
  void nsString::AssignWithConversion( const nsACString& aData )

  void nsTString_CharT::AssignWithConversion(
                            const incompatible_char_type* aData,
                            int32_t aLength = -1);

The last of the three exists inside the double-included nsTString* world and
so describes two functions, giving four in total.

This has two advantages:

* it removes code

* at the call points, it makes clear (from the replacement name) which
  conversion is being carried out.  The generic name "AssignWithConversion"
  doesn't make that obvious -- one had to infer it from the types.

The patch also removes two commented out lines from
editor/composer/nsComposerCommands.cpp, that appear to be related.  They are
at top level, where they would never have compiled.  They look like
leftovers from some previous change.

--HG--
extra : rebase_source : fb47bf450771c3c9ee3341dd14520f5da69ec4f5
2017-07-24 19:23:52 +02:00
Eric Rahm
0ec1628a5d Bug 1368994 - Remove !compMgr warning. r=froydnj 2017-07-26 14:00:10 -07:00
Bevis Tseng
95b18d794e Bug 1382172 - Name nsITimerCallback instances in native implementation. r=billm
--HG--
extra : rebase_source : 84de1abfcc30a6964144c2e6718a508c71027b65
2017-07-27 02:18:20 +08:00
Bevis Tseng
a7505864a8 Bug 1378930 - Part 2: Remove the aName parameter from SchedulerGroup/DocGroup/DispatcherTrait. r=billm
--HG--
extra : rebase_source : 11319e568a51d16754a6a9990f76c35c86c2bda7
2017-07-26 16:13:35 +08:00
Bevis Tseng
d935b29e72 Bug 1378930 - Part 1: Remove nsINamed::SetName(). r=billm
MozReview-Commit-ID: 7aM1yJRsfPH

--HG--
extra : rebase_source : f207a37be835ac4e6c431af56737cebacf5c566d
2017-07-21 11:50:43 +08:00
Eric Rahm
08daad2b64 Bug 1369002 - Stop warning if the mainThread is null in GetCurrentThread. r=froydnj 2017-06-20 09:51:29 -07:00
Haik Aftandilian
546c76f86e Bug 1376496 - Part 4 - FileDescriptorFile.cpp coding style fixes. r=jimm
MozReview-Commit-ID: LN5o3WIW8ug

--HG--
extra : rebase_source : 225bfafa51c2626b98bc540cd907f7ce408f78bd
2017-07-17 23:48:42 -07:00
Bill McCloskey
fff3f0890c Bug 1383328 - Use TabGroup as event target for browser-status-filter (r=smaug)
MozReview-Commit-ID: HOSmqr5Vpwh
2017-07-25 19:52:36 -07:00
Nicholas Nethercote
d97f8b05ed Bug 1381726 - Remove nsTextFormatter::smprintf_free(). r=erahm.
We can just use free() instead.

--HG--
extra : rebase_source : d1fa65550f22d0531ec4cc3b173fb2de36dee6e6
2017-07-25 09:09:27 +10:00
Nicholas Nethercote
2a4f265a62 Bug 1381727 (part 2) - Remove SmprintfFree(). r=glandium.
It's just a complex wrapper for free(), or equivalent function. (In practice,
all the uses end up in free().)

--HG--
extra : rebase_source : 247ea8458aa57319bd1c8366115a9b4f39ed5a33
2017-07-25 09:09:25 +10:00
Carsten "Tomcat" Book
679210723b merge mozilla-inbound to mozilla-central a=merge 2017-07-25 14:27:17 +02:00
Kris Maglione
8408f943c1 Bug 1383215: Follow-up: Fix straggler xpcshell test.
MozReview-Commit-ID: IhD2Kqtxtwu
2017-07-24 22:10:18 -07:00
Kris Maglione
cd5c5d6f7f Bug 1383215: Part 5 - Update tests that relied on loading the same JSM from multiple URLs.
MozReview-Commit-ID: KEXGiMrauH7

--HG--
extra : rebase_source : c1b5a1e22c00bdc42cc7cdfae2f4718248c7965d
extra : histedit_source : 968e9daffc7505853aac4b892178f27c3386aec1
2017-07-21 18:01:42 -07:00
Sylvestre Ledru
7c0ae251cd Bug 1381253 - Remove redundant control flow declarations rs=ehsan
MozReview-Commit-ID: FFxP4aMCbOL

--HG--
extra : amend_source : 3aec108430b11048f47ffe19d5da7ac5034770a9
2017-07-15 19:03:04 +02:00
Andrea Marchesini
45af660d99 Bug 1376089 - IncrementalFinalizeRunnable must be a CancelableStream in order to be dispatch to workers, r=mccr8 2017-07-21 17:30:55 +02:00
Paul Adenot
bd42c1f578 Bug 1376089 - Backed out changeset 96941e476121 for bustage.
MozReview-Commit-ID: FxavjFmStuL
2017-07-21 17:56:08 +02:00
Andrea Marchesini
4116a6ad94 Bug 1376089 - IncrementalFinalizeRunnable must be a CancelableStream in order to be dispatch to workers, r=mccr8 2017-07-21 17:30:55 +02:00
Daniel Holbert
6c89198a2f Bug 1349683: Give RevocableEventPtr a "move" assignment operator, and use it to reduce refcount churn. r=froydnj
MozReview-Commit-ID: 9JQXZJqebm2

--HG--
extra : rebase_source : dea9940c9041567b7995b851624a210f08d04f30
2017-07-19 00:03:59 -07:00
Stone Shih
5c6d99d228 Bug 1351148 Part3: Synthesize native input events with priority. f=kats,smaug. r=smaug.
The test helper_touch_action_regions.html uses nsDOMWindowUtils to synthesize native input events and creates some runnables to trigger the test. It expects the runnables which synthesize native input events are processed first, then the runnables to continue the test, and finally the input events are forwarded from chrome process to content process. Enabling event prioritization may change the execution order.
Wraps those runnables to synthesize native input events as priority=input and dispatches those runnables to continue the test with priority=input to make sure the execution order is as expected.

MozReview-Commit-ID: 8hkaB1FRW9T
2017-05-19 15:41:24 +08:00
Stone Shih
de7f705042 Bug 1351148 Part2: Add a priority queue for input events. r=smaug.
MozReview-Commit-ID: 5ud1Ex9UNVo
2017-03-21 15:44:12 +08:00
Stone Shih
1467938d67 Bug 1351148 Part1: Add include header to TimerThread.h to fix compile errors. r=smaug.
MozReview-Commit-ID: 65UfFMwmSrm
2017-05-29 17:19:17 +08:00
Stone Shih
9d1d77d849 Bug 1351148 Part2: Add a priority queue for input events. r=smaug.
MozReview-Commit-ID: 5ud1Ex9UNVo
2017-03-21 15:44:12 +08:00
Stone Shih
64a5f2d51c Bug 1351148 Part1: Add include header to TimerThread.h to fix compile errors. r=smaug.
MozReview-Commit-ID: 65UfFMwmSrm
2017-05-29 17:19:17 +08:00
Wes Kocher
39b73cc234 Merge m-c to inbound, a=merge
MozReview-Commit-ID: 3prpvFA27fd
2017-08-10 18:24:04 -07:00
Wes Kocher
3152d1bc0c Backed out 3 changesets (bug 1382001) at developer's request a=backout
Backed out changeset 1fe47b777980 (bug 1382001)
Backed out changeset bd6770fadff3 (bug 1382001)
Backed out changeset 29353fb6613b (bug 1382001)

MozReview-Commit-ID: F4S2q5WAxe4
2017-08-10 18:03:05 -07:00
Eric Rahm
3508d6bf8f Bug 1382001 - Part 1: Handle gperf-like preamble in make_dafsa. r=froydnj
This updates make_dafsa.py to include anything preceding the first '%%' in the
generated header.

For example:

> #include <stdint.h>
> const uint64_t kExpiration = UINT64_C(12345);
> %%
> foo.bar.com, 1
> %%

Would generate:

> #include <stdint.h>
> const uint64_t kExpiration = UINT64_C(12345);
>
> const unsigned char kDafsa[] = {
>   ...
> };

MozReview-Commit-ID: 1oR3ssnlUyA
2017-08-10 17:29:09 -07:00
Eitan Isaacson
e6166bf4d1 Bug 1384672 - Add accessibility instantiator to about:support. r=jimm 2017-08-10 15:32:07 -07:00
Michael Layzell
e51c323738 Bug 1380081 - Part 11: Simplify the HangAnnotations abstraction, r=froydnj
HangAnnotations was very complex, required a separate allocation, and used this
unfortunate virtual interface implementation which made it harder to do
interesting things with it (such as serialize it over IPC).

This new implementation is much simpler and more concrete, making
HangAnnotations simply be a nsTArray<Annotation>. This also simplifies some of
the IPC code which was added in part 7.

MozReview-Commit-ID: EzaaxdHpW1t
2017-08-10 15:55:12 -04:00
Michael Layzell
01efa6d6e4 Bug 1380081 - Part 5: Add some helper methods to HangAnnotations, r=froydnj
These will be used to implement IPC serialization and deserialization of the
HangDetails object to send over IPC. This is a temporary measure as
HangAnnotations is rewritten in part 11.

MozReview-Commit-ID: 1WHNvhDrMF5
2017-08-10 15:55:12 -04:00
Michael Layzell
ee7272fb92 Bug 1380081 - Part 4: Move BHR into its own component, r=froydnj
MozReview-Commit-ID: 7TOGofAYM6W


--HG--
rename : xpcom/threads/BackgroundHangMonitor.cpp => toolkit/components/backgroundhangmonitor/BackgroundHangMonitor.cpp
rename : xpcom/threads/BackgroundHangMonitor.h => toolkit/components/backgroundhangmonitor/BackgroundHangMonitor.h
rename : toolkit/components/telemetry/ThreadHangStats.h => toolkit/components/backgroundhangmonitor/ThreadHangStats.h
rename : xpcom/threads/ThreadStackHelper.cpp => toolkit/components/backgroundhangmonitor/ThreadStackHelper.cpp
rename : xpcom/threads/ThreadStackHelper.h => toolkit/components/backgroundhangmonitor/ThreadStackHelper.h
rename : xpcom/threads/nsIHangDetails.idl => toolkit/components/backgroundhangmonitor/nsIHangDetails.idl
2017-08-10 15:55:12 -04:00
Michael Layzell
b0eb879969 Bug 1380081 - Part 3: Remove the ThreadHangStats object and related code, r=froydnj
MozReview-Commit-ID: EtrktVmc3vP
2017-08-10 15:55:12 -04:00
Michael Layzell
18a7248d09 Bug 1365309 - Part 2: re-enable BHR on linux, r=froydnj
MozReview-Commit-ID: BtRZecG4IYA
2017-08-10 15:55:12 -04:00
Stone Shih
9573b6e439 Bug 1351148 Part2: Add a priority queue for input events. r=smaug.
MozReview-Commit-ID: 5ud1Ex9UNVo
2017-03-21 15:44:12 +08:00
Stone Shih
afa6a2e045 Bug 1351148 Part1: Add include header to TimerThread.h to fix compile errors. r=smaug.
MozReview-Commit-ID: 65UfFMwmSrm
2017-05-29 17:19:17 +08:00
Nicholas Nethercote
e99e711d3f Bug 1382099 - Remove MOZ_WIDGET_GONK from xpcom/. r=erahm.
As well as the straightforward things, this lets us remove ReadSysFile and
WriteSysFile, which in turn lets us remove TestFileUtils.cpp.

--HG--
extra : rebase_source : fc90c05352e654ffc41009d8504a9c54f394fc3f
2017-07-21 10:45:39 +10:00
L. David Baron
97a8a3c332 Bug 1381080 patch 7 - Mark nsLiteral[C]String constructor as constexpr. r=erahm
MozReview-Commit-ID: 5ASqQAGBqq

--HG--
extra : transplant_source : y%CB%BE%82%E7%E0%C9%2C%DE%26%1A%86%C8%17_%1E%A6E%9C%7B
2017-07-20 15:47:00 -07:00
L. David Baron
6a5b0be9fc Bug 1381080 patch 4 - Assert that strings whose static type requires a null-terminated buffer aren't assign a non-null-terminated buffer. r=erahm
I actually couldn't figure out a way to trigger this assertion with the
current string code without doing invalid casts, but there are things we
may want to add to the string code in the future that might risk hitting
this (e.g., move constructors, promoting various rebind methods to
nsA[C]String), so I think it's worth asserting.

MozReview-Commit-ID: 4R0dYuTfrFW

--HG--
extra : transplant_source : %B6%87I%0E%7F%21%CC2%19%CD%A7%E6TRA%9D%AEO%90%D7
2017-07-20 15:46:59 -07:00
L. David Baron
cb0e6b4512 Bug 1381080 patch 3 - Encapsulate setting mData/mLength/mDataFlags in a new method. r=erahm
This is needed for patch 4.

MozReview-Commit-ID: 4BFlTtQdtoN

--HG--
extra : transplant_source : %7C%F7%FDN%E5%7Df%0C%7D%10%EF%C0%25%B9%D6%18%1E%93%BE%A0
2017-07-20 15:46:59 -07:00
L. David Baron
7c15789222 Bug 1381080 patch 2 - Encapsulate setting to empty buffer in a new method. r=erahm
This is needed for patch 4.

MozReview-Commit-ID: 7xKQv37cy5k

--HG--
extra : transplant_source : %ED%16%85q%7F%E7%117%29%D2c%C2%21%20%D7%C9%BA%CCC%CC
2017-07-20 15:46:59 -07:00
L. David Baron
eb59a21402 Bug 1381080 patch 1 - Add ClassFlags::NULL_TERMINATED to strings that require null-termination. r=erahm
This is needed for patch 4.

MozReview-Commit-ID: 5ikQFIL9O0i

--HG--
extra : transplant_source : %88%80%E3%04%11%7E%7F%A4%7E%15%1B%1A%84%E2%13%3E%F6%E8%2A%1C
2017-07-20 15:46:58 -07:00
Ehsan Akhgari
43091e2839 Bug 1379282 - Improve XPCOM's pointer hashing functions for pointers to neighboring memory locations; r=erahm
The simplistic shift-based hashing function creates a lot of collisions
for pointers pointing to arrays as it doesn't do a great job at distributing
the data randomly based on the input bytes.
2017-07-19 14:16:35 -04:00
Andrew Osmond
8bc3918397 Bug 1359833 - Part 0. Add SchedulerGroup::IsSafeToRunUnlabeled method to determine if running in an unlabeled context. r=billm 2017-07-19 14:15:11 -04:00
Ehsan Akhgari
3df4db262f Backout changeset 06f92d065a85 (bug 1377333) because we don't need keys that are that big 2017-07-18 23:06:00 -04:00
Ryan VanderMeulen
366f48ad7e Merge inbound to m-c. a=merge 2017-07-18 12:14:50 -04:00
Andrew McCreight
d6f0453414 Bug 1350729 - Implement fake refcount logging for nsFakeStringBuffer. r=dbaron
Running with XPCOM_MEM_LOG_CLASSES=nsStringBuffer triggers an
assertion in refcount logging for nsFakeStringBuffers. These are given
an initial refcount of 1, without calling NS_LOG_ADDREF. Then,
AddRef() is called on these objects in StaticAtom::StaticAtom(), and
we tell the refcount logging system about the fake buffer, and that it
has a refcount of 0, triggering the assertion.

The first part of the fix is to call NS_LOG_ADDREF for this initial
refcount, in StaticAtom().

This first fix causes refcount logging to start reporting that the
fake string buffers leak, when XPCOM_MEM_LOG_CLASSES is not set. This
is because refcount logging is now getting told about these objects
being AddRefed at 1, which it takes to mean that an object is created.

To work around this issue, I add an array gFakeBuffers that contains
every fake string buffer we create, and tell the refcount logging
system that these objects are all being destroyed, when the atom table
is being shut down. This could result in some bogosity if the fake
buffers are "leaked" but hopefully this is still an improvement over
the current state.

MozReview-Commit-ID: 5AxoBYAlYRU

--HG--
extra : rebase_source : ba0763cb494894918141774025db525cea9f9c75
2017-07-14 10:20:23 -07:00
Wes Kocher
4ff7648fb6 Backed out changeset 9033647b9a51 (bug 1350729) for build failures in nsAtomTable.cpp a=backout CLOSED TREE
MozReview-Commit-ID: 9wb9Z6tlEar
2017-07-17 11:47:50 -07:00
Andrew McCreight
e762779c3b Bug 1350729 - Implement fake refcount logging for nsFakeStringBuffer. r=dbaron
Running with XPCOM_MEM_LOG_CLASSES=nsStringBuffer triggers an
assertion in refcount logging for nsFakeStringBuffers. These are given
an initial refcount of 1, without calling NS_LOG_ADDREF. Then,
AddRef() is called on these objects in StaticAtom::StaticAtom(), and
we tell the refcount logging system about the fake buffer, and that it
has a refcount of 0, triggering the assertion.

The first part of the fix is to call NS_LOG_ADDREF for this initial
refcount, in StaticAtom().

This first fix causes refcount logging to start reporting that the
fake string buffers leak, when XPCOM_MEM_LOG_CLASSES is not set. This
is because refcount logging is now getting told about these objects
being AddRefed at 1, which it takes to mean that an object is created.

To work around this issue, I add an array gFakeBuffers that contains
every fake string buffer we create, and tell the refcount logging
system that these objects are all being destroyed, when the atom table
is being shut down. This could result in some bogosity if the fake
buffers are "leaked" but hopefully this is still an improvement over
the current state.

MozReview-Commit-ID: 5AxoBYAlYRU

--HG--
extra : rebase_source : 967520e825d26c369a11acc478d223d190137a43
2017-07-14 10:20:23 -07:00
Michael Layzell
c9b99e80ad Bug 1380096 - Avoid non-null terminated strings and heap for main thread runnable name, r=erahm
For some reason, I continuously ran into windows x64 specific failures when
trying to read this heap allocated data while the main thread was paused. I
don't know specifically how this happened, but I am able to avoid it by instead
directly allocating the buffer in a `mozilla::Array` in static storage, and
copying that data instead.

MozReview-Commit-ID: 473d6IpHlc4
2017-07-17 16:30:02 -04:00
Ryan VanderMeulen
019bd042fc Merge autoland to m-c. a=merge 2017-07-14 09:16:03 -04:00
Andrea Marchesini
50f9ea47a3 Bug 1350958 - Finish labeling ProxyReleaseEvent, r=billm 2017-07-14 08:49:22 +02:00
Brad Werth
291faedb49 Bug 1380165 Part 1: Remove no-longer-used NS_MACOSX_JAVA2_PLUGIN_DIR variable and a comment that referenced a closed bug that conditionally used it. r=mstange
MozReview-Commit-ID: 7Qbel0gmEAI

--HG--
extra : rebase_source : 68801d890663572d0232b99082b49241cb3f8a02
2017-07-12 14:01:12 -07:00
Carsten "Tomcat" Book
260b5f956f merge mozilla-inbound to mozilla-central a=merge 2017-07-13 16:35:22 +02:00
Carsten "Tomcat" Book
f193d6bbd3 Backed out changeset a5c0a74876ae (bug 1376323) for causing bug 1379578 2017-07-13 16:24:26 +02:00
Carsten "Tomcat" Book
95745c2ae6 Backed out changeset ced6c13e61e9 (bug 1376472) 2017-07-13 16:23:54 +02:00
Sebastian Hengst
65c3b9ff62 Backed out changeset b223c191f442 (bug 1355746) for frequently failing mochitests with: /tests/dom/base/test/test_data_uri.html logged result after SimpleTest.finish(): iframe should have NullPrincipal. r=backout 2017-07-12 19:20:11 +02:00
Sebastian Hengst
93749c3cde Backed out changeset e0fd0ae58d0f (bug 1355746) 2017-07-12 19:19:22 +02:00
Sebastian Hengst
0aae03bc9b Backed out changeset ae4f6149befb (bug 1355746) 2017-07-12 19:19:18 +02:00
Brad Werth
8e8714cad4 Bug 1059424 Part 2: Simplify nsAppFileLocationProvider Java plugin detection now that we are minimum macOS 10.9. r=mstange
MozReview-Commit-ID: CkmH2ngEDKT

--HG--
extra : rebase_source : 8a24d9b9f012a28c171cb6d2024e9f5a83ba9080
2017-07-10 15:37:46 -07:00
Henry Chang
7cd9ba26ef Bug 1355746 - Part 3. Test cases for IdleTaskRunner. r=smaug
MozReview-Commit-ID: 3RsC1pT9Fzc

--HG--
extra : rebase_source : bff35257c0e7b5e224c5e575b609699f1b71616f
2017-07-12 14:13:44 +08:00
Henry Chang
602eed5546 Bug 1355746 - Part 2. Polish IdleTaskRunner and reuse it for background parsing. r=smaug
This patch is mainly to make IdleTaskRunner reusable by nsHtml5TreeOpExecutor.
The only necessary work to that purpose is to remove the dependency of
sShuttingDown, which was a static variable in nsJSEnvironment.cpp.
The idea is to have a "ShouldCancel" as a callback for the consumer to
return sShuttingDown.

In addition to sShuttingDown, we use std::function<bool()> as the runner
main callback type.

MozReview-Commit-ID: FT2X1unSvPS

--HG--
extra : rebase_source : dc9bcf669a95dda5c40bccde2cbc836099536eb5
2017-07-12 09:23:15 +08:00
Henry Chang
f991045c00 Bug 1355746 - Part 1. Rename CollectRunner to IdleTaskRunner and move to xpcom/threads/IdleTaskRunner.h/cpp r=smaug
Nothing is changed in this patch except for renaming and code move around.
The strategy is to have the final file setup in this patch without any
detail change. The actual code change will be in the next patch so that
we can focus on reviewing the diff in the next patch regarding IdleTaskRunner.

MozReview-Commit-ID: 4Bul9mZ7z1n

--HG--
extra : rebase_source : 22aeb5dca58501ec335ef8bc7b0efb6aea565bbf
2017-07-12 09:18:57 +08:00
Carsten "Tomcat" Book
41e0f69542 Backed out changeset 1eb2623a06c8 (bug 1374024) 2017-07-13 11:10:17 +02:00
Tristan Bourvon
145fe29dbe Bug 1374024 - add static-analysis annotation for methods that return dangling pointers. r=mystor
MozReview-Commit-ID: KE4a4W0Du3I
2017-07-06 14:29:07 +02:00
Eric Rahm
0dc3c70d24 Bug 1376038 - Part 1: Use a cached ghost window value for the distinguished amount. r=mccr8
We already periodically calculate the ghost window amount after cycle
collection, this just uses a cached value of that for the distinguished amount.
This avoids the overhead of a recalculating the value when reporting telemetry.
2017-07-11 13:58:20 -07:00
Jon Coppeard
3460a3c5dd Bug 1378717 - Store JS holders in a vector for faster iteration r=smaug 2017-07-11 16:52:01 +01:00
L. David Baron
57e3e8641f Bug 1343715 - Remove nsA[C]String::SetDataFlags. r=dmajor
MozReview-Commit-ID: EDQbH9pZKtZ

--HG--
extra : transplant_source : %FA%16%DC%A2C%DAM%F8%AC9%B6%F3d%DF%9E%5B%80%99%7E%B3
2017-07-10 12:23:11 -07:00
L. David Baron
715cb90c8e Bug 1343715 - Split nsTSubstring::mFlags into separate variables for class and data flags (rust bindings changes). r=mystor
Thanks to Manish for help in reflecting this idiomatically in rust.

MozReview-Commit-ID: 8tB7vsc5yxc

--HG--
extra : transplant_source : F%87%16%82.P%BD%F3%B1%A4%19%BA%F0%3DQ%F6%ED%BD%95%60
2017-07-10 12:23:11 -07:00
L. David Baron
c59666d841 Bug 1343715 - Split nsTSubstring::mFlags into separate variables for class and data flags. r=dmajor
MozReview-Commit-ID: JW1p5BxpHKA

--HG--
extra : transplant_source : %20e%CF%FA%60%A2%1Bn%1A%C6%A2%DBAy%3C%E0b%0C%077
2017-07-10 12:23:10 -07:00
L. David Baron
539cb0d5a7 Bug 1343715 - Use SetDataFlags in ForgetSharedBuffer. r=dmajor
I believe this should fix some incorrect clearing of F_CLASS_FIXED.

MozReview-Commit-ID: 4ga2NEM9M5Z

--HG--
extra : transplant_source : %ECF%CF%D0%F6%19%9F%24%86%EFR%CAVZ%ED%60%D5nU%D8
2017-07-10 12:23:10 -07:00
Marco Castelluccio
0f9d4e1985 Bug 1380665 - Define MOZ_CODE_COVERAGE for the entire tree. r=jmaher 2017-07-13 19:12:23 +02:00
Nathan Froyd
a6c96367a7 Bug 1347963 - part 1 - introduce mozilla::RecursiveMutex; r=erahm
Having a proper recursively-acquirable mutex type makes intent clearer,
and RecursiveMutex also happens to be somewhat faster than
ReentrantMonitor.
2017-03-14 14:05:51 -04:00
Carsten "Tomcat" Book
b5c809a8bc merge mozilla-inbound to mozilla-central a=merge 2017-07-07 10:35:44 +02:00
Sylvestre Ledru
4e9cf83ee8 Bug 1378712 - Remove all trailing whitespaces r=Ehsan
MozReview-Commit-ID: Kdz2xtTF9EG

--HG--
extra : rebase_source : 7235b3802f25bab29a8c6ba40a181a722f3df0ce
2017-07-06 14:00:35 +02:00
Tom Ritter
70e18ce213 Bug 1377605 Cast -1 to DWORD to correctly match the error return value given by SuspendThread r=aklotz
MozReview-Commit-ID: 5XHgkpQJQKY

--HG--
extra : rebase_source : 92d963e3415840eebbe47bf835ec6fb20489d908
2017-07-03 16:07:25 -05:00
Nicholas Nethercote
c67ffb04c6 Bug 1352575 (part 5) - Remove PluginModuleParent::mIsStartingAsync. r=jimm.
This allows a bunch of other things to be removed too, including
PluginModuleParent::mSurrogateInstances,
PluginModuleChromeParent::sInstantiated, and NS_PLUGIN_INIT_PENDING.

The patch also removes the AsyncPluginInit crash annotation.

--HG--
extra : rebase_source : cadb1d215fd93051c9032ea0a1fb6f1d2fb80c6d
2017-04-18 16:56:43 +10:00
Cervantes Yu
3ae5186923 Bug 1375281 - Part 2: Implementation of nsMemoryReporterManager::GetHeapAllocatedAsync(). r=erahm,froydnj
Implement nsMemoryReporterManager::GetHeapAllocatedAsync() by dispatching
nsMemoryReporterManager::GetHeapAllocated() to a thread pool and dispatching
the result back to the main thread to run the callback with the requested
attribute.

MozReview-Commit-ID: 9jj1UYqu5KD

--HG--
extra : rebase_source : a3620c6313b3253c41adff8d67c77a347240891b
extra : amend_source : 1732a5e4390fadbc597b6a61dc7d51e892f8441e
extra : histedit_source : b892d2046a07fe00368e8f1976394dc1f4c2f496
2017-07-06 11:19:40 +08:00
Cervantes Yu
9b7ab955c8 Bug 1375281 - Part 1: Add getHeapAllocatedAsync() to nsIMemoryReporter.idl. r=erahm
nsIMemoryReporter::getHeapAllocatedAsync() is added to get attribute
'heapAllocated' asynchronously.

MozReview-Commit-ID: 96KyZpCeTG1

--HG--
extra : rebase_source : 5c27b26788a3a96821ce054911dda8ce2932007d
extra : amend_source : fcb923dac2dfa9d7aa5bf520d38c5bb11f0d60e9
extra : histedit_source : 83ae65c153f7cef6c6529296838a9d9aa367219e
2017-07-06 11:19:32 +08:00
David Anderson
6cf29dbc0e Refactor PaintThread for async painting. (bug 1377060 part 1, r=mchang)
--HG--
extra : rebase_source : 4a3601108175cc2f091800f123461187282ca31f
2017-07-05 15:19:47 -07:00
Stephen Fewer
9aa633008d Bug 1372849 - Improve the security of WindowsDllDetourPatcher. r=dmajor
--HG--
extra : rebase_source : d5afe76d17a4af5c54d041cde29bce2f34477742
2017-06-14 14:46:39 -05:00
Nicholas Nethercote
2262103c96 Bug 1378051 - Remove bogus #include of nsStringAPI.h. r=froydnj.
nsStringAPI.h is long gone, so that branch is clearly never compiled.

--HG--
extra : rebase_source : 0b237e73a11eed11d05e7c572583362fe52eab70
2017-07-04 16:04:51 +10:00
Nicholas Nethercote
5d446671a8 Bug 1375776 (part 4) - Allow ProfilerMarkerPayload.h to be #included unconditionally. r=mstange.
This requires:

- Moving the constructors of ProfilerMarkerPayload and its subclasses into the
  .h file so they are visible even when ProfilerMarkerPayload.cpp isn't
  compiled.

- Similarly, using a macro to make StreamPayload() a crashing no-op when the
  profiler isn't enabled. (It is never called in that case.)

--HG--
extra : rebase_source : 7aad2fdb1bd4e49782024dba6664e8f992771520
2017-06-23 16:24:15 +10:00
Mats Palmgren
9a66affd7f Bug 1376498 part 5 - Remove nsClassHashtable::RemoveAndForget(). r=froydnj
MozReview-Commit-ID: 2VVgViNhruj
2017-07-05 02:01:45 +02:00
Mats Palmgren
fae81013c9 Bug 1376498 part 3 - Make nsClassHashtable inherit Remove() for API consistency with ns[Base|Interface|RefPtr]Hashtable. r=froydnj
MozReview-Commit-ID: LQMaamZhkM4
2017-07-05 02:01:44 +02:00
Mats Palmgren
9542d00e58 Bug 1376498 part 2 - Use plain Remove(key) in some places instead of Lookup(key).Remove() for simplicity. r=froydnj
MozReview-Commit-ID: 7GlCL1jyGAz
2017-07-05 02:01:44 +02:00
Mats Palmgren
f88bb52a9e Bug 1376498 part 1 - Unify the ns[Base|Interface|RefPtr]Hashtable::Remove() signatures for consistency. Make it return true if an entry was removed, with an optional out param to move the value. r=froydnj
MozReview-Commit-ID: JVciibiSPL5
2017-07-05 02:01:44 +02:00
Michael Layzell
2eb92d98f1 Backout Bug 1365309 for test failures on a CLOSED TREE
MozReview-Commit-ID: 143ac9l7Goq
2017-07-04 17:31:13 -04:00
Michael Layzell
b24bf46af6 Bug 1377344 - Record the name of the currently running Runnable on thread hangs for BHR, r=njn, r=froydnj
MozReview-Commit-ID: IYRHh6jiTeo
2017-07-04 15:16:19 -04:00