Commit Graph

15798 Commits

Author SHA1 Message Date
Mike Hommey
713aafb052 Bug 1333081 - Avoid using the STL in nsXPCOMGlue.cpp to avoid allocator mismatch on Windows. r=froydnj
--HG--
extra : rebase_source : a65a5cf3d197d88799d24514c6d860b2e6c111ab
2017-01-24 08:44:42 +09:00
Benjamin Smedberg
e56d1ab394 Bug 1332631 part H - move gtests from xpcom/glue to xpcom/tests, and unify the two TestThreadUtils.cpp into one file, r=froydnj
MozReview-Commit-ID: 2idOXKJOnuW

--HG--
rename : xpcom/glue/tests/gtest/TestArray.cpp => xpcom/tests/gtest/TestArray.cpp
rename : xpcom/glue/tests/gtest/TestGCPostBarriers.cpp => xpcom/tests/gtest/TestGCPostBarriers.cpp
rename : xpcom/glue/tests/gtest/TestNsDeque.cpp => xpcom/tests/gtest/TestNsDeque.cpp
extra : rebase_source : f5b3dc2f338c056e96c9fc42d9cdb4d2f7128116
extra : histedit_source : 9d85be5854af26a214aff4e1027415b9472e21a1
2017-01-20 15:22:23 -05:00
Benjamin Smedberg
9b43ba6de7 Bug 1332631 part G - file moves from xpcom/glue to xpcom/components, and remove GenericModule which is no longer useful, r=froydnj
MozReview-Commit-ID: 5NvfKRAlZqs

--HG--
rename : xpcom/glue/GenericFactory.cpp => xpcom/components/GenericFactory.cpp
rename : xpcom/glue/GenericFactory.h => xpcom/components/GenericFactory.h
rename : xpcom/glue/nsCategoryCache.cpp => xpcom/components/nsCategoryCache.cpp
rename : xpcom/glue/nsCategoryCache.h => xpcom/components/nsCategoryCache.h
rename : xpcom/glue/nsComponentManagerUtils.cpp => xpcom/components/nsComponentManagerUtils.cpp
rename : xpcom/glue/nsComponentManagerUtils.h => xpcom/components/nsComponentManagerUtils.h
rename : xpcom/glue/nsServiceManagerUtils.h => xpcom/components/nsServiceManagerUtils.h
extra : rebase_source : 2f9e4b8de99c2835c4322282b0227ed3f833c285
extra : histedit_source : 45033773c304696050a649e3fbde1ecb33ec1fea
2017-01-20 14:41:10 -05:00
Benjamin Smedberg
5030045d16 Bug 1332631 part F - move nsXPTCUtils.h to xpcom/reflect/xptcall, r=froydnj
MozReview-Commit-ID: 7h69wKKdvwe

--HG--
rename : xpcom/glue/nsXPTCUtils.h => xpcom/reflect/xptcall/nsXPTCUtils.h
extra : rebase_source : 5939339f35e842e025538fed616d405f15749d82
extra : histedit_source : 99784f8fad561d895dfa09ff996d120bacc325fd
2017-01-20 14:25:46 -05:00
Benjamin Smedberg
4b13a903e5 Bug 1332631 part E - file moves from xpcom/glue to xpcom/string, r=froydnj
MozReview-Commit-ID: AGHVJ5uYOoI

--HG--
rename : xpcom/glue/nsTextFormatter.cpp => xpcom/string/nsTextFormatter.cpp
rename : xpcom/glue/nsTextFormatter.h => xpcom/string/nsTextFormatter.h
extra : rebase_source : 18e1bf4f93d9174ff6808ea08b22f3c308df7da1
extra : histedit_source : 3436c455836aeb2583dd1418a1bad259cb779af1
2017-01-20 14:19:22 -05:00
Benjamin Smedberg
60cd8481eb Bug 1332631 part D - file moves from xpcom/glue to xpcom/threads, r=froydnj
MozReview-Commit-ID: kDBGvlYjyW

--HG--
rename : xpcom/glue/BlockingResourceBase.cpp => xpcom/threads/BlockingResourceBase.cpp
rename : xpcom/glue/BlockingResourceBase.h => xpcom/threads/BlockingResourceBase.h
rename : xpcom/glue/CondVar.h => xpcom/threads/CondVar.h
rename : xpcom/glue/DeadlockDetector.h => xpcom/threads/DeadlockDetector.h
rename : xpcom/glue/MainThreadUtils.h => xpcom/threads/MainThreadUtils.h
rename : xpcom/glue/Monitor.h => xpcom/threads/Monitor.h
rename : xpcom/glue/Mutex.h => xpcom/threads/Mutex.h
rename : xpcom/glue/ReentrantMonitor.h => xpcom/threads/ReentrantMonitor.h
rename : xpcom/glue/nsProxyRelease.cpp => xpcom/threads/nsProxyRelease.cpp
rename : xpcom/glue/nsProxyRelease.h => xpcom/threads/nsProxyRelease.h
rename : xpcom/glue/nsThreadUtils.cpp => xpcom/threads/nsThreadUtils.cpp
rename : xpcom/glue/nsThreadUtils.h => xpcom/threads/nsThreadUtils.h
extra : rebase_source : 5f908c04835192c1949bed0828d7bd086e795f64
extra : histedit_source : 26a8dbfd9b082c9200fbe7b176f6593e406c98ce
2017-01-20 14:13:57 -05:00
Benjamin Smedberg
2b3617b084 Bug 1332631 part C - file moves from xpcom/glue to xpcom/ds, r=froydnj
MozReview-Commit-ID: 9ZhC5bROWdO

--HG--
rename : xpcom/glue/Observer.h => xpcom/ds/Observer.h
rename : xpcom/glue/PLDHashTable.cpp => xpcom/ds/PLDHashTable.cpp
rename : xpcom/glue/PLDHashTable.h => xpcom/ds/PLDHashTable.h
rename : xpcom/glue/nsArrayEnumerator.cpp => xpcom/ds/nsArrayEnumerator.cpp
rename : xpcom/glue/nsArrayEnumerator.h => xpcom/ds/nsArrayEnumerator.h
rename : xpcom/glue/nsArrayUtils.cpp => xpcom/ds/nsArrayUtils.cpp
rename : xpcom/glue/nsArrayUtils.h => xpcom/ds/nsArrayUtils.h
rename : xpcom/glue/nsBaseHashtable.h => xpcom/ds/nsBaseHashtable.h
rename : xpcom/glue/nsCOMArray.cpp => xpcom/ds/nsCOMArray.cpp
rename : xpcom/glue/nsCOMArray.h => xpcom/ds/nsCOMArray.h
rename : xpcom/glue/nsClassHashtable.h => xpcom/ds/nsClassHashtable.h
rename : xpcom/glue/nsDataHashtable.h => xpcom/ds/nsDataHashtable.h
rename : xpcom/glue/nsDeque.cpp => xpcom/ds/nsDeque.cpp
rename : xpcom/glue/nsDeque.h => xpcom/ds/nsDeque.h
rename : xpcom/glue/nsEnumeratorUtils.cpp => xpcom/ds/nsEnumeratorUtils.cpp
rename : xpcom/glue/nsEnumeratorUtils.h => xpcom/ds/nsEnumeratorUtils.h
rename : xpcom/glue/nsHashKeys.h => xpcom/ds/nsHashKeys.h
rename : xpcom/glue/nsInterfaceHashtable.h => xpcom/ds/nsInterfaceHashtable.h
rename : xpcom/glue/nsJSThingHashtable.h => xpcom/ds/nsJSThingHashtable.h
rename : xpcom/glue/nsPointerHashKeys.h => xpcom/ds/nsPointerHashKeys.h
rename : xpcom/glue/nsQuickSort.cpp => xpcom/ds/nsQuickSort.cpp
rename : xpcom/glue/nsQuickSort.h => xpcom/ds/nsQuickSort.h
rename : xpcom/glue/nsRefPtrHashtable.h => xpcom/ds/nsRefPtrHashtable.h
rename : xpcom/glue/nsTArray-inl.h => xpcom/ds/nsTArray-inl.h
rename : xpcom/glue/nsTArray.cpp => xpcom/ds/nsTArray.cpp
rename : xpcom/glue/nsTArray.h => xpcom/ds/nsTArray.h
rename : xpcom/glue/nsTArrayForwardDeclare.h => xpcom/ds/nsTArrayForwardDeclare.h
rename : xpcom/glue/nsTHashtable.h => xpcom/ds/nsTHashtable.h
rename : xpcom/glue/nsTObserverArray.cpp => xpcom/ds/nsTObserverArray.cpp
rename : xpcom/glue/nsTObserverArray.h => xpcom/ds/nsTObserverArray.h
rename : xpcom/glue/nsTPriorityQueue.h => xpcom/ds/nsTPriorityQueue.h
extra : rebase_source : 5f0638e3268acb932e1a8d3f499d283bc1922acd
extra : histedit_source : dcea9485885877bb02f95a1ecc627465a507f757
2017-01-20 13:59:21 -05:00
Benjamin Smedberg
d478e7c99f Bug 1332631 part B - file moves from xpcom/glue to xpcom/base, r=froydnj
MozReview-Commit-ID: ARS1aTugYjl

--HG--
rename : xpcom/glue/AutoRestore.h => xpcom/base/AutoRestore.h
rename : xpcom/glue/EnumeratedArrayCycleCollection.h => xpcom/base/EnumeratedArrayCycleCollection.h
rename : xpcom/glue/IntentionalCrash.h => xpcom/base/IntentionalCrash.h
rename : xpcom/glue/nsCOMPtr.cpp => xpcom/base/nsCOMPtr.cpp
rename : xpcom/glue/nsCOMPtr.h => xpcom/base/nsCOMPtr.h
rename : xpcom/glue/nsCRTGlue.cpp => xpcom/base/nsCRTGlue.cpp
rename : xpcom/glue/nsCRTGlue.h => xpcom/base/nsCRTGlue.h
rename : xpcom/glue/nsClassInfoImpl.cpp => xpcom/base/nsClassInfoImpl.cpp
rename : xpcom/glue/nsCycleCollectionNoteChild.h => xpcom/base/nsCycleCollectionNoteChild.h
rename : xpcom/glue/nsCycleCollectionNoteRootCallback.h => xpcom/base/nsCycleCollectionNoteRootCallback.h
rename : xpcom/glue/nsCycleCollectionParticipant.cpp => xpcom/base/nsCycleCollectionParticipant.cpp
rename : xpcom/glue/nsCycleCollectionParticipant.h => xpcom/base/nsCycleCollectionParticipant.h
rename : xpcom/glue/nsCycleCollectionTraversalCallback.h => xpcom/base/nsCycleCollectionTraversalCallback.h
rename : xpcom/glue/nsDebug.h => xpcom/base/nsDebug.h
rename : xpcom/glue/nsIClassInfoImpl.h => xpcom/base/nsIClassInfoImpl.h
rename : xpcom/glue/nsID.cpp => xpcom/base/nsID.cpp
rename : xpcom/glue/nsID.h => xpcom/base/nsID.h
rename : xpcom/glue/nsIInterfaceRequestorUtils.cpp => xpcom/base/nsIInterfaceRequestorUtils.cpp
rename : xpcom/glue/nsIInterfaceRequestorUtils.h => xpcom/base/nsIInterfaceRequestorUtils.h
rename : xpcom/glue/nsINIParser.cpp => xpcom/base/nsINIParser.cpp
rename : xpcom/glue/nsINIParser.h => xpcom/base/nsINIParser.h
rename : xpcom/glue/nsISupportsImpl.cpp => xpcom/base/nsISupportsImpl.cpp
rename : xpcom/glue/nsISupportsImpl.h => xpcom/base/nsISupportsImpl.h
rename : xpcom/glue/nsISupportsUtils.h => xpcom/base/nsISupportsUtils.h
rename : xpcom/glue/nsIWeakReferenceUtils.h => xpcom/base/nsIWeakReferenceUtils.h
rename : xpcom/glue/nsMemory.cpp => xpcom/base/nsMemory.cpp
rename : xpcom/glue/nsMemory.h => xpcom/base/nsMemory.h
rename : xpcom/glue/nsTWeakRef.h => xpcom/base/nsTWeakRef.h
rename : xpcom/glue/nsVersionComparator.cpp => xpcom/base/nsVersionComparator.cpp
rename : xpcom/glue/nsVersionComparator.h => xpcom/base/nsVersionComparator.h
rename : xpcom/glue/nsWeakReference.cpp => xpcom/base/nsWeakReference.cpp
rename : xpcom/glue/nsWeakReference.h => xpcom/base/nsWeakReference.h
extra : rebase_source : df11b181f383b70ffe5051716d63ed11b98be53b
extra : histedit_source : 6d0743fac0562e4676e44a52f0e85375fb4a44ff
2017-01-23 09:24:01 -05:00
Benjamin Smedberg
d51a4c7205 Bug 1332631 part A - remove two files which aren't referenced or used, r=froydnj
MozReview-Commit-ID: GIqIvpWZ9Jd

--HG--
extra : rebase_source : 217be3e6d634812a1c99cf929e97cf5e7a83a004
extra : histedit_source : 12c6acadc63a8f5baf6a71604d3d9ed83dd07f8d
2017-01-20 10:48:53 -05:00
Phil Ringnalda
8a8c8d9816 Merge autoland to m-c, a=merge 2017-01-23 18:42:45 -08:00
ffxbld
ed04f7a449 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2017-01-23 15:38:06 +00:00
Carsten "Tomcat" Book
e12cc94275 merge mozilla-inbound to mozilla-central a=merge 2017-01-23 11:15:58 +01:00
Carsten "Tomcat" Book
f040eda61d Merge mozilla-central to autoland 2017-01-23 11:42:26 +01:00
Gerald Squelart
eb46a3cefe Bug 1332785 - Optimize MozPromiseHolder::Resolve and Reject - r=jwwang
Instead of lvalues, MozPromiseHolder::Resolve and Reject now take either
const& or && values of the expected types, to allow move semantics all the way
to the ResolveOrRejectValue object.

Note that we won't just take forwarding references of any type, as this could
lead to implicit conversions by bypassing the 'explicit' marker of the value
type constructors, like in bug 1331137.

MozReview-Commit-ID: K0jeY6WTXI1

--HG--
extra : rebase_source : 7ee0fd1edfdeadb239f48c8b5b46fd54af3ec5d2
2017-01-21 12:24:10 +11:00
Masatoshi Kimura
720fd1b0ae Bug 1331820 - Disallow NS_ConvertUTF16toUTF8 for NS_NewNativeLocalFile. r=froydnj
MozReview-Commit-ID: 5YGVp8mOGff

--HG--
extra : rebase_source : 5114896c7e0a81e8c85fc5f35f35f5c17d405ecb
2017-01-21 15:48:56 +09:00
JW Wang
d7ec453920 Bug 1333280 - Make ThenValueBase::mCompletionPromise a MozPromise::Private. r=gerald
MozReview-Commit-ID: E046bQoQN1

--HG--
extra : rebase_source : e8563000ac0ab452d703dd6e67878e8605f7acc9
extra : intermediate-source : 514e9122a222fba252f47673fbe3cf842c322790
extra : source : 7f2bf86df00cc33737da5a2aaa8052cc60c5d8cf
2017-01-23 17:47:27 +08:00
Gerald Squelart
25992688b7 Bug 1332825 - Use move semantics in MozPromise::All() and AllPromiseHolder - r=jwwang
MozPromise::All sets up 'Then' lambdas on all sub-promises, each one taking the
resolve/reject object by value.
Since this value will not be used again in the lambda, it is safe to Move it,
and from there MozPromiseHolder::Resolve/Reject can also Move it again into the
holder storage, potentially saving two copies per Resolve/Reject.
Also, once all sub-promises have been resolved, the resolve-values can be
Move'd into the joining promise's Resolve function.

MozReview-Commit-ID: 5oxgNEnE5lq

--HG--
extra : rebase_source : f0542055beb1434e7db384722c5123d888ca00e7
2017-01-21 17:33:49 +11:00
Gerald Squelart
5c95a7141e Bug 1332779 - InvokeAsync's MethodCall constructor should take forwarding refs instead of lvalues - r=jwwang
The aArgs parameter pack was already Forward'ed inside the constructor, so
maybe the '&&' was forgotten?

MozReview-Commit-ID: 7yg07axhZnp

--HG--
extra : rebase_source : dccd3ea5f0f1b6cadfe6bbc86c8ad34cb7f2c99e
2017-01-21 12:04:54 +11:00
Phil Ringnalda
74f10163fe Merge m-i to m-c, a=merge 2017-01-21 15:24:42 -08:00
Phil Ringnalda
72dfd3bd3f Merge m-c to m-i 2017-01-20 19:16:11 -08:00
Phil Ringnalda
68b37a46e8 Merge m-i to m-c, a=merge 2017-01-20 19:00:04 -08:00
Gian-Carlo Pascutto
f004938bbb Bug 1330326 - Add Split() function on String classes. r=froydnj
MozReview-Commit-ID: 3xug2xMR60j

--HG--
extra : rebase_source : e39f37936f5b07411921b9875a85fd55241847be
2017-01-30 12:34:35 +01:00
Mike Hommey
ce74ceac47 Bug 1330533 - Remove XRE_LibFuzzerGetFuncs. r=decoder
Now that XRE_LibFuzzerGetFuncs is not used from outside libxul, it can
be inlined in LibFuzzerRunner::Run, simplifying things a little more.

--HG--
extra : rebase_source : 7a09f37444bf02983b232c964d85e7a866221f48
2017-01-12 16:02:50 +09:00
Mike Hommey
7523430127 Bug 1330533 - Use FuzzerDriver directly instead of wrapping it in a libfuzzer_main function. r=decoder
Going further from the previous changes, all libfuzzer_main really does
is call the init function, and then proceed to call the fuzzer driver
with the testing function.

So instead of calling that function for it to do all that, the
LibFuzzerRunner can just call the init function itself, and then
call the fuzzer driver with the testing function.

--HG--
extra : rebase_source : 2eb1a2ae763ef21827471cd32addceacefc1ac5d
2017-01-12 14:44:18 +09:00
Mike Hommey
92c5bff388 Bug 1330533 - Remove argc/argv arguments to XRE_LibFuzzerSetMain. r=decoder
The function given to XRE_LibFuzzerSetMain is called from somewhere that
does have access to argc/argv already, so we can avoid passing them
to XRE_LibFuzzerSetMain.

This actually might fix subtle issues with argc/argv not really matching
reality when calling the LibFuzzerMain function in the current code:
some arguments are handled before the call, and both argc and argv are
modified from within XRE_main, but the values stored for the
LibFuzzerMain call still are the original ones.

Argv being a pointer, and it not being reallocated, the value stored for
the LibFuzzerMain call points to the changed one, but argc, being an
integer, is not modified accordingly.

In fact, it's actually worse, because while the Gecko code doesn't
reallocate argv, gtk_main might. So if some GTK flag is passed on the
command line, there's also a possibility that the LibFuzzerMain function
will do a use-after-free.

So all in all, it's just better to use the set of modified argc/argv
from XRE_main instead of storing them from main().

--HG--
extra : rebase_source : 92b89909eab0fc2f67ce372b959bb0e3ed12cd2b
2017-01-12 11:59:37 +09:00
Mark Banner
16e6d381ac Bug 503613 - Remove old 'tail =' lines from xpcshell.ini files; r=gps
MozReview-Commit-ID: 62Hp5ISxowJ

--HG--
extra : rebase_source : daa8efb3409031fea553f4fd0c9d0746e38dc308
extra : histedit_source : b4c23aacf678ba0d0ac9c09191a7c494ead11a08
2017-01-18 10:30:39 +00:00
Nicholas Nethercote
12647a7223 Bug 1332577 (part 7) - Rename mozilla_get_pseudo_stack() as profiler_get_pseudo_stack(). r=mstange.
This makes it consistent with other profiler functions.

--HG--
extra : rebase_source : 1e52acdc448691b8859bb147a0c70b198b432fe2
2017-01-20 15:07:05 +11:00
Nathan Froyd
28f29930ef Bug 1324894 - use standard Monitor APIs rather than PR_Interrupt in BackgroundHangMonitor; r=darchons
Using PR_Interrupt here makes life difficult for other things, such as
moving away from NSPR synchronization primitives.
2017-01-20 16:38:12 -05:00
Nathan Froyd
1eb20054a8 Bug 1332648 - remove bogus string radix/case #defines; r=erahm
Nothing uses these defines, so we should remove them lest anybody get
confused.  I would have also removed kAutoDetect (who would want to do
this?!), but kAutoDetect is used in one place in the tree, and I didn't
want to hold up the deletion of these two items with trying to fix that
one place.
2017-01-20 16:37:35 -05:00
Boris Zbarsky
e0b13280b1 Bug 1332531. Improve the documentation for cycle collector skippability bits. r=smaug,mccr8 2017-01-20 12:59:15 -05:00
Randell Jesup
422acb55ec Bug 1332167: Unix major() and minor() return unsigned r=froydnj 2017-01-20 10:38:43 -05:00
Bevis Tseng
849cf42acf Bug 1314833 - Part 1.1: Refator XPCOMThreadWrapper as EventTargetWrapper to allow EventTargets to be AbstractThreads. r=jwwang
MozReview-Commit-ID: FYjbKxcIc5o

--HG--
extra : rebase_source : 37d55a393552bf4cf5de1ad25c2039fde8517f3a
2016-11-29 13:01:18 +08:00
Carsten "Tomcat" Book
709bd29d0a merge mozilla-inbound to mozilla-central a=merge 2017-01-19 16:05:22 +01:00
Boris Zbarsky
bdfd8efaa4 Bug 1330759 part 6. Make the null-termination asserts in nsStringBuffer::ToString into diagnostic asserts. r=froydnj 2017-01-18 22:20:15 -05:00
Boris Zbarsky
1ae3af9b2c Bug 1330759 part 5. Back out the nsTSubstring changes we made in bug 1324430, because they can lead to non-null-terminated nsStrings. r=froydnj 2017-01-18 22:20:15 -05:00
Benjamin Smedberg
c7352a6657 Bug 1306329 - Stop exporting XPCOM and XUL symbols. r=glandium
--HG--
extra : rebase_source : 482177f9c1026e527cff9f23b36a5076fa6d07a5
2016-12-02 12:55:34 -05:00
Kris Maglione
729b7a2019 Bug 1273251: Part 3 - Allow CallbackObject to contain a null callable. r=peterv
MozReview-Commit-ID: FCXVHouhG3I

--HG--
extra : rebase_source : f3e9325559d40bcb4017ec2505f435275d4fea7f
2016-11-14 21:25:37 -08:00
Wes Kocher
d4ced30f67 Backed out 4 changesets (bug 1306329) for 3000+ hazards a=backout
Backed out changeset 1c2f51ce3faf (bug 1306329)
Backed out changeset 6bb17b9a62d8 (bug 1306329)
Backed out changeset 377ca1419f1a (bug 1306329)
Backed out changeset ad4e531c7070 (bug 1306329)

MozReview-Commit-ID: KJAxdyJeJ6J
2017-01-17 17:55:24 -08:00
Benjamin Smedberg
d616a7ec44 Bug 1306329 - Stop exporting XPCOM and XUL symbols. r=glandium
--HG--
extra : rebase_source : 8c700498470b42279197f316d553154b1f2ed235
2016-12-02 12:55:34 -05:00
Benjamin Smedberg
11e200c0c5 Bug 1306329 - Don't build the dependent XPCOM glue. r=glandium
--HG--
extra : rebase_source : 918474e0f4c831db5ce2f3070414f928fa489ddb
2016-10-26 13:55:51 -04:00
Benjamin Smedberg
3caf6299aa Bug 1306329 - Don't build the dependent XPCOM glue. r=glandium
--HG--
extra : rebase_source : 918474e0f4c831db5ce2f3070414f928fa489ddb
2016-10-26 13:55:51 -04:00
Mike Hommey
6da931c3c8 Bug 1306327 - Remove everything related to frozen functions from the XPCOM glue. r=bsmedberg
Now that nothing is using those functions, we can remove them and limit
the scope of the standalone glue to initialize the new Bootstrap API.

--HG--
extra : rebase_source : b73845a207f8d6e632c46d089a00b7a67e1648fc
2017-01-10 17:12:43 +09:00
Mike Hommey
2330dcf840 Bug 1306327 - Move reading application.ini to XRE_main. r=bsmedberg
Reading application.ini involves using nsCOMPtr<nsIFile>, and that can
only happen through the XPCOM glue, which we eventually want to get rid
of.

So, while keeping the command line argument/environment variable
handling in nsBrowserApp, we move the actually parsing of the file to
XRE_main, where things can be handled without the XPCOM glue.

--HG--
extra : rebase_source : 487960a671476d4edae4f568c37efa6563ef4dff
2017-01-10 16:43:23 +09:00
Mike Hommey
bebd095c4c Bug 1306327 - Use the new XRE Bootstrap API in Firefox for Android. r=bsmedberg
Here, we also modify APKOpen to use the XPCOM glue loading process
instead of custom symbol resolution, so that the Bootstrap API can be
used in a more straightforward manner.

--HG--
extra : rebase_source : 55037ba30ca66a090b73923a3ce8df5b054bf47a
2016-12-17 06:48:01 +09:00
Mike Hommey
5f3d2e8810 Bug 1306327 - Add a new XRE Bootstrap API that wraps all the XRE methods. r=bsmedberg
This is the first step towards changing how nsBrowserApp and other current
XPCOM glue users start up Gecko.

The goal here is to expose the same API via a single object with a
VTable instead of the current XPCOM glue machinery. Instead of creating
an entirely new API and changing everything to use it, we go forward
with smaller steps for a more comprehensible transition.

--HG--
extra : rebase_source : c2cf90ab3bb812b9ea75c70c9766f1a47ea50828
2016-12-15 16:46:18 +09:00
Mike Hommey
17436e8731 Bug 1306327 - Remove NS_XRE_DLL_BLOCKLIST_ENABLED. r=bsmedberg
Instead of having nsBrowserApp.cpp set a flag in XREAppData to indicate
whether the DLL blocklist properly initialized, just have XRE code ask
the blocklist itself.

--HG--
extra : rebase_source : e872853481acce68b325909e476d009aec878701
2017-01-10 09:10:36 +09:00
Mike Hommey
af19e1f051 Bug 1306327 - Remove the flags argument to XRE_main. r=bsmedberg
This hasn't been used since the removal of the Metro code in bug
1039866, close to two years ago.

--HG--
extra : rebase_source : 58ec1ce63e4231c8006cafd3424675f14ddbf9f1
2017-01-10 14:15:50 +09:00
Mike Hommey
a92655a398 Bug 1306327 - Remove XPCOMGlueEnablePreload. r=froydnj
Back in bug 632404, when the function was added, preloading was
conditional. But after some A/B testing, the conclusion in bug 771745
was that we would just do preloading unconditionally.

Which means in practice, we don't need to have a function to enable it
manually anymore, since we're always enabling it.

--HG--
extra : rebase_source : c76307c13c057e87e1fe4564b82113fbfa20d382
2016-12-15 17:37:53 +09:00
Hiroyuki Ikezoe
a4cf573971 Bug 1330824 - Add truncate for nsAString and nsACString. r=mystor
MozReview-Commit-ID: 2ND5ra3buxI
2017-01-14 15:02:14 +09:00
Ben Kelly
10f39e4fd9 Bug 1331038 Make nsPipe handle OOM conditions gracefully. r=froydnj 2017-01-13 17:11:01 -08:00
JW Wang
84387b56fe Bug 1328130. Part 3 - remove unused functions and fix comments. r=gerald
MozReview-Commit-ID: JURmHasmhOU

--HG--
extra : rebase_source : f2113e74e5abb0d57b2c70eb7b47b5d6c2829a3d
extra : intermediate-source : 88255f6011134a455b3bee888ebee256209f8e56
extra : source : 5371fe5d527981419953fae96d5cc80d6d15b413
2017-01-11 23:52:24 +08:00
JW Wang
4f5754ca55 Bug 1328130. Part 2 - remove MozPromiseRequestHolder::Begin(). r=gerald
MozReview-Commit-ID: JL27n0Era6E

--HG--
extra : rebase_source : e6de76db3fb35b110370497f4060ea1c3f527f23
extra : intermediate-source : 5bc39a45ef042b895a5abda59cc0796e8cfb4be3
extra : source : a7f7faded7b112e8a971ca96b091a9a22214a2bb
2017-01-11 16:33:29 +08:00
JW Wang
bc040ae51e Bug 1328130. Part 1 - add ->Track(). r=gerald
MozReview-Commit-ID: FW7Urv6nyOS

--HG--
extra : rebase_source : 256576fa8b1e5bb6587e280512619f5d7e74a0cc
extra : intermediate-source : 82d0eea2d53edd8d538bc2d0fd0116046fb489b7
extra : source : 9f4301a98b836ec5fc4ca9e49e6a32f0232b71e5
2017-01-11 15:38:37 +08:00
Carsten "Tomcat" Book
3ad97e202a merge mozilla-inbound to mozilla-central a=merge 2017-01-12 10:14:43 +01:00
Eric Rahm
acbdb31633 Bug 1322735 - Remove OBSERVE_LATE_WRITES define. r=glandium
OBSERVE_LATE_WRITES is now always defined, we can just remove it.

MozReview-Commit-ID: El6RnzZnXBN

--HG--
extra : rebase_source : 95fe63562b88c61ee5915e28a3a8b89c985042db
2016-12-20 15:29:05 -08:00
Eric Rahm
87cfbc1b65 Bug 1322735 - Remove MOZ_STACKWALKING define. r=glandium
With frame pointer omission disabled we should always have usable stacks on Windows. This allows us to remove the MOZ_STACKWALKING define as it will always be enabled.

MozReview-Commit-ID: 54xs3Hf1r4P

--HG--
extra : rebase_source : dfaf13fb4c2185985f4f074c338ccf1fef8f3c94
2016-12-20 15:11:36 -08:00
John David Anglin
0beeba79e1 Bug 1325495 - xpcom: Save %r26 in arg0 stack slot on hppa with gcc. r=froydnj
In the 32-bit parisc runtime, the first four non floating-point
arguments are passed in registers (%r26, %r25, %r24 and %r23).
The remaining arguments are passed on the stack. There are four
reserved slots on the stack that the callee can use to save the
first four argument registers if the callee desires.

The StubN functions are special in that arguments are not explicitly
declared. %r26 is used for the "self" pointer. The call to SharedStub(n)
loads n into %r26 and clobbers the "self" pointer in %r26. The hppa
SharedStub implementation expects to find the "self" pointer on the
stack in the slot reserved for StubN. However, gcc doesn't copy any
arguments to the stack as no arguments are declared for StubN. Even
if it did, there's no guarantee that we could force gcc to save the
argument on the stack as that's more expensive than copying to a
free register. Thus, we need to copy %r26 to the stack slot manually.
2017-01-12 06:37:13 +09:00
John Paul Adrian Glaubitz
fde7f4bca8 Bug 1275204 - Use OpenBSD/sparc64 xptcall stubs on Linux/sparc64. r=froydnj 2017-01-11 16:04:34 +09:00
Nicholas Nethercote
949658eb73 Bug 1329857 - Remove NS_METHOD and NS_CALLBACK. r=froydnj.
Bug 1295053 removed most uses of NS_METHOD and NS_CALLBACK, but one use was
unintentionally left behind (in the XPIDL parser) and another has since crept
in (in MediaDrmCDMProxy.h).

So this patch removes NS_METHOD and NS_CALLBACK. NS_METHOD_(nsresult) and
NS_CALLBACK_(nsresult, T) can still be used for the same purpose, but those
alternatives are less likely to be used unintentionally.

--HG--
extra : rebase_source : a50fc7b2a64a36d1ca9beda81bc0edb8f2ec1934
2017-01-10 14:08:43 +11:00
Nathan Froyd
ec503a0996 Bug 1329718 - remove nsISupportsVoid and associated machinery; r=erahm
Nothing uses it, it's virtually impossible to use from script, and there
are better ways to pass a |void*| around in C++.
2017-01-10 16:31:48 -05:00
Nathan Froyd
0ac6ef352e Bug 1298676 - part 2 - add an AutoIOInterposerDisable RAII class; r=aklotz
This will ensure the I/O Interposer is re-enabled after temporarily
disabling it.
2017-01-10 16:31:25 -05:00
Nathan Froyd
9d007ffa3e Bug 1298676 - part 1 - add IOInterposer::Enable(); r=aklotz
In some parts of the crash reporter, we need to disable I/O
interposition, then turn it back on.  We didn't have a function for
re-enabling the I/O interposer...until now.
2017-01-10 16:31:25 -05:00
Carsten "Tomcat" Book
89882dc5f4 merge mozilla-inbound to mozilla-central a=merge 2017-01-10 12:11:31 +01:00
Gerald Squelart
86723427e8 Bug 1329319 - gtest for issue with NewRunnableMethod on a non-refcounted base class method - r=froydnj
This test alone would fail to even build without the previous patch,
demonstrating the issue at hand, where the method-pointer from the base class
forces NewRunnableMethod to store a pointer to that base class in a RefPtr,
which is not possible when that base class is not ref-counted.

MozReview-Commit-ID: 9XaQ8SwMqVo

--HG--
extra : rebase_source : 3ba0e13fb76ef2c5969084334c2f11e3f445d11f
2017-01-09 11:09:59 +11:00
Gerald Squelart
1cc4e2c254 Bug 1329319 - Allow NewRunnableMethod to method of a non-refcounted base class - r=froydnj
This is done by storing the object pointer based on the exact pointee type,
instead of as hinted by the method-pointer, which could be a non-refcounted
base class.

The stored pointer type is statically-checked to be derived from (or the same
as) the class type from the method-pointer, to prevent misuses.

One change had to be done in TrackBuffersManager, as it was passing another
type and relying on implicit pointer conversions. A simple `.get()` to pass
the raw pointer type (to be stored in a RefPtr) fixed that one issue.

MozReview-Commit-ID: 4kH0XdjB5Rk

--HG--
extra : rebase_source : 40ad68820cfce469ecda272f430062f05dfcd09f
2017-01-10 10:49:08 +11:00
Kate McKinley
edae411c07 Bug 1313595 - Lower HSTS priming timeout r=mayhemer
MozReview-Commit-ID: 5wOqtYM1MfD

--HG--
extra : rebase_source : 78cb81a9223c80b93b2c574846111eb3bad91c03
2016-12-08 11:07:55 -10:00
Wes Kocher
b0df943433 Backed out 2 changesets (bug 1329319) because it will not build a=backout
Backed out changeset ae96a44e6a8f (bug 1329319)
Backed out changeset a75ecabf7129 (bug 1329319)

MozReview-Commit-ID: HQ3on7jlZXN
2017-01-09 15:46:42 -08:00
Gerald Squelart
53855b51b8 Bug 1329319 - gtest for issue with NewRunnableMethod on a non-refcounted base class method - r=froydnj
This test alone would fail to even build without the previous patch,
demonstrating the issue at hand, where the method-pointer from the base class
forces NewRunnableMethod to store a pointer to that base class in a RefPtr,
which is not possible when that base class is not ref-counted.

MozReview-Commit-ID: 9XaQ8SwMqVo

--HG--
extra : rebase_source : 5c752e1a16af8e8f976853396228abff2c76c43c
2017-01-09 11:09:59 +11:00
Gerald Squelart
189314d9cf Bug 1329319 - Allow NewRunnableMethod to method of a non-refcounted base class - r=froydnj
This is done by storing the object pointer based on the exact pointee type,
instead of as hinted by the method-pointer, which could be a non-refcounted
base class.

The stored pointer type is statically-checked to be derived from (or the same
as) the class type from the method-pointer, to prevent misuses.

One change had to be done in TrackBuffersManager, as it was passing another
type and relying on implicit pointer conversions. A simple `.get()` to pass
the raw pointer type (to be stored in a RefPtr) fixed that one issue.

MozReview-Commit-ID: 4kH0XdjB5Rk

--HG--
extra : rebase_source : 3eb7fa3cb1873f71b4d5e7118d2dc48f6fdf2874
2017-01-09 11:11:16 +11:00
Gerald Squelart
4a0d6ed936 Bug 1329513 - RemoveRawOrSmartPointerHelper to extract T from T*, RefPtr<T>, and nsCOMPtr<T> - r=froydnj
Implemented in the same style as RemovePointer and RemoveSmartPointer, for
consistency.
It could have been done by invoking the latter two, but I didn't want to add an
unnecessary extra layer of templates; the cost of the code duplication should
be negligible.

MozReview-Commit-ID: IH4lZkbRYGZ

--HG--
extra : rebase_source : b9b9a07a03fab768fc88b300c33627b3179a81da
2017-01-09 09:32:36 +11:00
Gerald Squelart
bf7e5a9179 Bug 1329512 - Make IsRefcountedSmartPointer and RemoveSmartPointer const&volatile-resistant - r=froydnj
MozReview-Commit-ID: HayfiFH0f9E

--HG--
extra : rebase_source : 702a3d45017eaa72032c06e53460105e572d036e
2017-01-09 08:28:49 +11:00
Gerald Squelart
28aa494db6 Bug 1329512 - Move *SmartPointer classes higher in the file - r=froydnj
Just a straight move, no code changes.

This will be needed in bug 1329319, as some new code higher in the file will
rely on RemoveSmartPointer. Since the next patch will pretty much rewrite
RemoveSmartPointer anyway, I thought I might as well make the big move
right now, to keep better history/blame of the upcoming changes.

MozReview-Commit-ID: A2lMUFHFWg4

--HG--
extra : rebase_source : 8470a0f7e2e6892e9d9c2e4eef1c44d8f73d2dad
2017-01-09 08:21:44 +11:00
Gerald Squelart
5d4cad020a Bug 1320785 - Remove obsolete 'ns' from 'StorensRefPtrPassByPtr' - r=froydnj
MozReview-Commit-ID: FuhlsLVFdLi

--HG--
extra : rebase_source : c1bb8330c4ca0dbf15a68a4dbd0dfeff615163be
2017-01-09 07:55:19 +11:00
Ryan VanderMeulen
1e6f972917 Merge inbound to m-c. a=merge 2017-01-07 11:22:47 -05:00
Gerald Squelart
d551220947 Bug 1322964 - MozPromise.Then() taking only one resolve+reject method - r=jwwang
Then and ThenPromise can now be given only one member function, which takes a
`const MozPromise::ResolveOrRejectValue&`.

MozReview-Commit-ID: 5Zm0i27GHcA

--HG--
extra : rebase_source : 1ed068681616fa0aa5fa77f8dbf78ccbd727f363
2016-12-08 23:09:07 -10:00
Gerald Squelart
b3e89a3af9 Bug 1322964 - MozPromise.Then() taking only one resolve+reject function - r=jwwang
Then and ThenPromise can now be given only one function object, which takes a
`const MozPromise::ResolveOrRejectValue&`.

MozReview-Commit-ID: BEtc3spK9Yh

--HG--
extra : rebase_source : 1b16ad15ebfcdfb653d8d98073adee0f8b27b46e
2017-01-03 16:15:14 +11:00
Gerald Squelart
9a05a0446d Bug 1322964 - MozPromise clean-up - r=jwwang
Removed 'virtual' from overrides, as per coding guidelines.
Fixed some incorrect indentations, and inconsistencies.

MozReview-Commit-ID: 4kNVgoDljG3

--HG--
extra : rebase_source : 7b25abacc7cfc1a6898963bc58120204c70bee45
2016-12-08 10:48:48 -10:00
Xidorn Quan
bab46fee29 Bug 1326145 - Remove HAVE_CPP_AMBIGUITY_RESOLVING_USING. r=froydnj
MozReview-Commit-ID: FVDZjTJ4ZhA

--HG--
extra : rebase_source : 8767112e8969cd9a3c4c118a01bec6b174024a7f
2016-12-29 18:05:20 +11:00
Markus Stange
4bdc4ca0fb Bug 1323100 - Register most of the remaining threadfunc threads with the profiler. r=froydnj
As far as I can tell, this covers all the remaining threads which we start
using PR_CreateThread, except the ones that are created inside NSPR or NSS,
and except for the Shutdown Watchdog thread in nsTerminator.cpp and the
CacheIO thread. The Shutdown Watchdog thread stays alive past leak detection
during shutdown (by design), so we'd report leaks if we profiled it. The
CacheIO thread seems to stay alive past shutdown leak detection sometimes as
well.

This adds a AutoProfilerRegister stack class for easy registering and
unregistering. There are a few places where we still call
profiler_register_thread() and profiler_unregister_thread() manually, either
because registration happens conditionally, or because there is a variable that
gets put on the stack before the AutoProfilerRegister (e.g. a dynamically
generated thread name). AutoProfilerRegister needs to be the first object on
the stack because it uses its own `this` pointer as the stack top address.

MozReview-Commit-ID: 3vwhS55Yzt

--HG--
extra : rebase_source : 56dd27282e7bd09a7e7dc7ca09ccfe3a0198e7af
2017-01-05 16:34:26 +01:00
Markus Stange
f603a27cd8 Bug 1323100 - Stop double-registering the LazyIdleThread with the profiler. r=froydnj
MozReview-Commit-ID: 2vdcgCcdOYJ

--HG--
extra : rebase_source : fd8b7c4a3052b261317d832ec03ee1c93be723b9
2016-12-21 23:07:26 +01:00
Markus Stange
e442f76c87 Bug 1323100 - Register named threads with the profiler. r=froydnj
MozReview-Commit-ID: FbE4BTcnfEh

--HG--
extra : rebase_source : 98ae8f4c48c396e35a77c81599b7b38790dea10b
2016-12-14 19:50:11 -05:00
Markus Stange
28a12440e4 Bug 1323100 - Remove NS_SetThreadName which is now unused. r=froydnj
MozReview-Commit-ID: 7je5PhV1TsU

--HG--
extra : rebase_source : 5b183794fe1c4cf58f5b77dcb85ebcbf59e635fe
2016-12-20 14:43:11 +01:00
Markus Stange
657be232e0 Bug 1323100 - Make NS_NewNamedThread use nsThreadManager::NewNamedThread. r=froydnj
MozReview-Commit-ID: 7e6l1A89he9

--HG--
extra : rebase_source : 376ed44481256b26d89b0c638c67a778b3a096a8
2016-12-20 14:18:22 +01:00
Markus Stange
8924022f9d Bug 1323100 - Add nsThreadManager::NewNamedThread API. r=froydnj
The point of this exercise is to make the thread name available in the thread
func of the thread, so that we can register the thread with the profiler from
the very start of its lifetime, and so that registration and unregistration
can be inside the same function.

MozReview-Commit-ID: DiiMKUQVr55

--HG--
extra : rebase_source : 24b15d56315ad49e72b3e9b76db7fb634f3bfe01
2016-12-20 15:10:20 +01:00
Markus Stange
45941e71bc Bug 1323100 - Remove nsThreadPoolNaming::SetThreadPoolName because it's now unused. r=froydnj
MozReview-Commit-ID: CYgF2NGD6pt

--HG--
extra : rebase_source : 47b9fe253507c75b0149aed70f84a7dbb144ecb9
extra : source : 1cd63b3998c4a4c2ef5c59eee24bd344b2d3bc6d
2016-12-19 16:16:50 +01:00
Markus Stange
7fd52a7829 Bug 1323100 - Use nsThreadPoolNaming::GetNextThreadName and NS_NewNamedThread in nsThreadPool. r=froydnj
MozReview-Commit-ID: 6IB5yvJtAQm

--HG--
extra : rebase_source : 3e3f22ed091dc881bed294bc64c611400021aaa8
2016-12-22 00:14:30 +01:00
Markus Stange
bd9d39ad80 Bug 1323100 - Create nsThreadPoolNaming::GetNextThreadName. r=froydnj
MozReview-Commit-ID: F0ZFFa5VkAW

--HG--
extra : rebase_source : b4ddac4a4d2f668c31beefb5cdfd737b01461c63
2016-12-22 00:38:41 +01:00
Markus Stange
692210bd80 Bug 1323100 - Assign names to all remaining threads that are created through NS_NewThread and create them using NS_NewNamedThread instead. r=froydnj
MozReview-Commit-ID: 7W1dt2BBKJZ

--HG--
extra : rebase_source : c7e335dac2e0f02782f0eb229a7181c8d01317a2
2016-12-21 11:43:50 +01:00
Markus Stange
8ad799fa1f Bug 1323100 - Create a version of NS_NewNamedThread that accepts an nsACString. r=froydnj
MozReview-Commit-ID: LhRjdzZeWCB

--HG--
extra : rebase_source : a81500209b326c62a91c79cbb709177e47f8863d
2016-12-22 00:05:51 +01:00
Cervantes Yu
c764d2cafa Bug 1328569 - Don't call UnmapViewOfFile() with a null address. r=froydnj
MozReview-Commit-ID: Ca5n8rSXQ4x

--HG--
extra : rebase_source : 511a8e7171c82dd2fb91357ee2da8feae6049800
2017-01-04 18:42:51 +08:00
Chris Peterson
20bc668a02 Bug 1280295 - Remove MOZ_HAVE_REF_QUALIFIERS. r=froydnj 2017-01-03 22:42:33 -08:00
Olli Pettay
d4f2be7cde Bug 1326507, rename Traverse to TraverseNative, r=mccr8
--HG--
extra : rebase_source : cb10292c2b9685855a6027a0377d10f168bbcbf6
2017-01-03 21:50:10 +02:00
Olli Pettay
0364dbc792 Bug 1326507, remove NS_IMPL_CYCLE_COLLECTION_TRAVERSE_SCRIPT_OBJECTS, r=mccr8
--HG--
extra : rebase_source : 3ae1207308de120b7299b13ecaa95dd1612b3459
2017-01-03 21:47:55 +02:00
Olli Pettay
8aa472a93c Bug 1326507, trace after traverse, r=mccr8
--HG--
extra : rebase_source : 496a186306372567fb917c2d21488fe5a87c5f75
2017-01-03 21:46:49 +02:00
Xidorn Quan
0f9ff65fce Bug 1322843 part 1 - Add Reverse method to nsTArray. r=froydnj
MozReview-Commit-ID: 8VNEFzHn4dC

--HG--
extra : rebase_source : 4f1ef1bca974045168d6e33e2f079ae1f7b44be9
2016-12-30 18:23:26 +11:00
Wes Kocher
65b11f5302 Backed out 27 changesets (bug 1323100) for leaks in mochitest-e10s-2 a=backout
Backed out changeset 069375097856 (bug 1323100)
Backed out changeset 3e64cdf12bb6 (bug 1323100)
Backed out changeset ba3a6bce2ba5 (bug 1323100)
Backed out changeset 4fcf1517da8d (bug 1323100)
Backed out changeset 5daf48da151e (bug 1323100)
Backed out changeset 4e441df8f70a (bug 1323100)
Backed out changeset 8ba2c7c2d262 (bug 1323100)
Backed out changeset 7b54195f4383 (bug 1323100)
Backed out changeset 8c1328db2d0c (bug 1323100)
Backed out changeset cb8d544864b8 (bug 1323100)
Backed out changeset 00453dfb7172 (bug 1323100)
Backed out changeset 3a5216789011 (bug 1323100)
Backed out changeset 3a7ce80e8657 (bug 1323100)
Backed out changeset 4baecf3669b0 (bug 1323100)
Backed out changeset c5ca13e76e13 (bug 1323100)
Backed out changeset 40249b284066 (bug 1323100)
Backed out changeset 1fb590677ace (bug 1323100)
Backed out changeset 699f7f888ea3 (bug 1323100)
Backed out changeset a1c171f8f925 (bug 1323100)
Backed out changeset c04743218bc5 (bug 1323100)
Backed out changeset 831f4de80f62 (bug 1323100)
Backed out changeset 55b1ef1a16cf (bug 1323100)
Backed out changeset 6675e4fd50f0 (bug 1323100)
Backed out changeset e26f9d68b74c (bug 1323100)
Backed out changeset 061f8e2d0000 (bug 1323100)
Backed out changeset 6695c396ef15 (bug 1323100)
Backed out changeset 5dbb824fd978 (bug 1323100)
2016-12-30 16:09:03 -08:00
Markus Stange
65630c6c32 Bug 1323100 - Register most of the remaining threadfunc threads with the profiler. r=froydnj
As far as I can tell, this covers all the remaining threads which we start
using PR_CreateThread, except the ones that are created inside NSPR or NSS.

This adds a AutoProfilerRegister stack class for easy registering and
unregistering. There are a few places where we still call
profiler_register_thread() and profiler_unregister_thread() manually, either
because registration happens conditionally, or because there is a variable that
gets put on the stack before the AutoProfilerRegister (e.g. a dynamically
generated thread name). AutoProfilerRegister needs to be the first object on
the stack because it uses its own `this` pointer as the stack top address.

MozReview-Commit-ID: 3vwhS55Yzt

--HG--
extra : rebase_source : 9deaace277db2f63c520325be27f6ed97aa65ac9
2016-12-30 20:27:59 +01:00
Markus Stange
e9c7fbcf49 Bug 1323100 - Stop double-registering the LazyIdleThread with the profiler. r=froydnj
MozReview-Commit-ID: 2vdcgCcdOYJ

--HG--
extra : rebase_source : 2a42caebc2a80b4d634eb741bbc196a718379e22
2016-12-21 23:07:26 +01:00
Markus Stange
85f0b506c0 Bug 1323100 - Register named threads with the profiler. r=froydnj
MozReview-Commit-ID: FbE4BTcnfEh

--HG--
extra : rebase_source : 4690ebcaf3b71008e9a4d5db31486683dcdb3f91
2016-12-14 19:50:11 -05:00
Markus Stange
83a9b3b26b Bug 1323100 - Remove NS_SetThreadName which is now unused. r=froydnj
MozReview-Commit-ID: 7je5PhV1TsU

--HG--
extra : rebase_source : 74a4339b3c7338e85caf9287b225d75a556b2938
2016-12-20 14:43:11 +01:00
Markus Stange
f7a18ffd6a Bug 1323100 - Make NS_NewNamedThread use nsThreadManager::NewNamedThread. r=froydnj
MozReview-Commit-ID: 7e6l1A89he9

--HG--
extra : rebase_source : 0bbd888a568937710d3bb6cd5b856063e3405ae6
2016-12-20 14:18:22 +01:00
Markus Stange
32ca34d977 Bug 1323100 - Add nsThreadManager::NewNamedThread API. r=froydnj
The point of this exercise is to make the thread name available in the thread
func of the thread, so that we can register the thread with the profiler from
the very start of its lifetime, and so that registration and unregistration
can be inside the same function.

MozReview-Commit-ID: DiiMKUQVr55

--HG--
extra : rebase_source : aa1d0c19250765c80c8e8ae59d2752bb4ad7eeac
2016-12-20 15:10:20 +01:00
Markus Stange
e05e8b4648 Bug 1323100 - Remove nsThreadPoolNaming::SetThreadPoolName because it's now unused. r=froydnj
MozReview-Commit-ID: CYgF2NGD6pt

--HG--
extra : rebase_source : cc09c212670d845c00629903b477674806618699
extra : source : 1cd63b3998c4a4c2ef5c59eee24bd344b2d3bc6d
2016-12-19 16:16:50 +01:00
Markus Stange
db237ad713 Bug 1323100 - Use nsThreadPoolNaming::GetNextThreadName and NS_NewNamedThread in nsThreadPool. r=froydnj
MozReview-Commit-ID: 6IB5yvJtAQm

--HG--
extra : rebase_source : d4d9bf2dab3e75821e931a11fa0a16f6ee1eb970
2016-12-22 00:14:30 +01:00
Markus Stange
5c622cb38b Bug 1323100 - Create nsThreadPoolNaming::GetNextThreadName. r=froydnj
MozReview-Commit-ID: F0ZFFa5VkAW

--HG--
extra : rebase_source : 9ebc1118e30bf841af2a2d1df3ada4d31e4035bd
2016-12-22 00:38:41 +01:00
Markus Stange
1cebff73d2 Bug 1323100 - Assign names to all remaining threads that are created through NS_NewThread and create them using NS_NewNamedThread instead. r=froydnj
MozReview-Commit-ID: 7W1dt2BBKJZ

--HG--
extra : rebase_source : ad47978ef81d048a90b9803803201eee32974024
2016-12-21 11:43:50 +01:00
Markus Stange
2e4dfba476 Bug 1323100 - Create a version of NS_NewNamedThread that accepts an nsACString. r=froydnj
MozReview-Commit-ID: LhRjdzZeWCB

--HG--
extra : rebase_source : 350ec2fbdc535a72eed34dc20d67765e4602da4b
2016-12-22 00:05:51 +01:00
Boris Zbarsky
ac198725dc Bug 1326096 followup. Suppress the false-positive GC analysis failure due to us doing an indirect call that the static analysis doesn't understand. r=sfink 2016-12-29 14:00:43 -08:00
Boris Zbarsky
fb32765d0e Bug 1326096 part 3. Pass a useful external string memory reporter to SpiderMonkey from Gecko code. r=froydnj 2016-12-29 13:19:27 -08:00
Nathan Froyd
4039d9589a Bug 1142197 - manage ProfilerBacktrace with UniquePtr; r=mstange
Smart pointers are better than raw pointers.
2017-01-06 09:21:01 -05:00
Jan de Mooij
158805801d Bug 1325075 - Fix Value::isGCThing footgun, stop returning true for NullValue. r=jonco,baku 2016-12-26 16:40:21 +01:00
Nathan Froyd
e26ccfecd9 Bug 1251936 - turn static analysis off on windows debug clang-cl builds; r=bustage
Also revert the followup patch to nsTArray.h, as that shouldn't
generally be needed.
2016-12-23 11:01:28 -05:00
Nathan Froyd
300ee74fdb Bug 1251936 - followup - make nsTArray<mozilla::gfx::FilterPrimitiveDescription> use copies on a CLOSED TREE; r=bustage 2016-12-23 10:37:15 -05:00
Bill McCloskey
8a53959bbe Bug 1320753 - Make TabGroup event target be a ThrottledEventQueue for timers, workers (r=bkelly)
MozReview-Commit-ID: FCfYz02r8yI
2016-12-23 11:48:13 -08:00
Andrea Marchesini
2dba3e889e Bug 1324430 - Implement nsTSubstring_CharT::Assign with length for a better string buffer sharing, r=froydnj 2016-12-23 17:22:21 +01:00
Nathan Froyd
10f57ebae4 Bug 1323023 - remove nsAllocator.h; r=erahm
Nothing includes it, and it's not even exported from xpcom/base/.
2017-01-09 13:56:12 -05:00
Phil Ringnalda
bcbe2e1fcc Merge m-c to autoland 2017-01-20 19:15:16 -08:00
Mike Hommey
9a71407b51 Bug 1332523 - Add BinaryPath::Get variant that returns a UniquePtr instead of filling a stack buffer. r=bsmedberg
--HG--
extra : rebase_source : 3fd502f67bd28e504f9a5d1a6ea1e790e9fec774
2017-01-13 09:40:54 +09:00
Mike Hommey
45bb38d482 Bug 1332523 - Make GetBootstrap take the path to an arbitrary file next to libxul. r=bsmedberg
The FileExists check can be removed because the code loading the library
will handle that case already.

--HG--
extra : rebase_source : bac53d3f88ed1dd716ee1340d40dae42becdfdf0
2017-01-13 09:27:39 +09:00
Mike Hommey
11a4734e0d Bug 1332523 - Remove nsXPCOMGlue.h. r=bsmedberg
--HG--
extra : rebase_source : 7a0b2441f768cbdef1a5b51139f8ecd4a6fde0c1
2017-01-13 07:56:05 +09:00
Wes Kocher
7d8bdef2a2 Merge m-c to inbound, a=merge
MozReview-Commit-ID: BS43zgtFrsm
2017-01-24 16:10:57 -08:00
Carsten "Tomcat" Book
0aed7a4ac5 Merge mozilla-central to mozilla-inbound
--HG--
rename : testing/docker/base-build/HASH => taskcluster/docker/base-build/HASH
rename : testing/docker/base-test/HASH => taskcluster/docker/base-test/HASH
rename : testing/docker/centos6-build-upd/HASH => taskcluster/docker/centos6-build-upd/HASH
rename : testing/docker/centos6-build/HASH => taskcluster/docker/centos6-build/HASH
rename : testing/docker/decision/HASH => taskcluster/docker/decision/HASH
rename : testing/docker/image_builder/HASH => taskcluster/docker/image_builder/HASH
rename : testing/docker/recipes/tooltool.py => taskcluster/docker/recipes/tooltool.py
rename : testing/docker/tester/HASH => taskcluster/docker/tester/HASH
2016-12-22 16:25:35 +01:00
Ting-Yu Chou
5f4802bf0b Bug 1322465 part 15 - Use explicit/MOZ_IMPLICIT for the unary constructors in xpcom/. r=bobowen,Ehsan
MozReview-Commit-ID: JtmtNbPwNOg

--HG--
extra : rebase_source : f877b0504c7106a0874b23b8cfc0eab12d610767
2016-12-16 16:01:11 +08:00
Wes Kocher
584a2f0f62 Merge inbound to central, a=merge
MozReview-Commit-ID: Cr9L1dhIzP2
2016-12-20 11:41:57 -08:00
Wes Kocher
b427632e5a Merge m-c to inbound, a=merge 2016-12-19 16:48:34 -08:00
JW Wang
6567965ad9 Bug 1324335. Part 1 - give MozPromiseHolder a move constructor. r=gerald
MozReview-Commit-ID: BBY4u0JSJTM

--HG--
extra : rebase_source : db81fc96d024304d3eef7f7b5ba503e0753662f2
extra : source : 4a22337cb08711fe4b0fe44d58a8d520c11c975f
2016-12-17 11:12:00 +08:00
DimiL
c34f7dfa1b Bug 1311910 - Add telemetry to measure update error and update timeout rate for V2 and V4. r=francois,henry
MozReview-Commit-ID: JL4aZrUOGH7

--HG--
extra : rebase_source : 6945d007bc3e317903837e6cf546935346925433
2016-12-19 09:43:02 +08:00
Jeff Walden
be049bba4a Bug 1315560 - Make nsThreadSyncDispatch::IsPending properly respect the C++ memory model with respect to threads. r=froydnj
--HG--
extra : rebase_source : 309596fd407a13900fdf51f7e6f1972b8613026e
2016-11-07 15:24:11 -08:00
Joel Maher
5b50e3503d Bug 1324024 - unable to see fprintf on assertion due to stdout vs stderr. r=ted
MozReview-Commit-ID: EswlrLCWps4
2016-12-19 11:31:01 -05:00
Makoto Kato
eaee45d547 Bug 1323695 - Conflict SHLoadLibraryFromKnownFolder when bumping up to WINVER=0x0601. r=froydnj
When setting WINVER=0x601, we cannot compile SpecialSystemDirectory.cpp due to the following.

 0:13.17 c:/Development/hg.mozilla.org/mozilla-inbound/xpcom/io/SpecialSystemDirectory.cpp(123): error C2084: function 'HRESULT SHLoadLibraryFromKnownFolder(const KNOWNFOLDERID &,DWORD,const IID &,void **)' already has a body
 0:13.17 C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\um\shobjidl.h(32834): note: see previous definition of 'SHLoadLibraryFromKnownFolder'
 0:13.17 c:/Development/hg.mozilla.org/mozilla-inbound/xpcom/io/SpecialSystemDirectory.cpp(158): error C2440: 'initializing': cannot convert from 'HRESULT (__cdecl *)(const KNOWNFOLDERID &,DWORD,const IID &,void **)' to 'HRESULT'
 0:13.17 c:/Development/hg.mozilla.org/mozilla-inbound/xpcom/io/SpecialSystemDirectory.cpp(158): note: There is no context in which this conversion is possible

MozReview-Commit-ID: 2KZEzcn21S7

--HG--
extra : rebase_source : b13f2fb11c9e006a83c7d5c3175af001e384b55e
2016-12-16 10:52:23 +09:00
Till Schneidereit
95b8398292 Bug 1322920 - Remove DOM Promise implementation. r=bz
MozReview-Commit-ID: 1zzd0x2LNNb
2016-12-14 17:11:48 +01:00
Ting-Yu Chou
a751129113 Bug 1322461 - Let nsTArray to use copy constructors for SourceBufferTask as it has non-memmovable member on Windows. r=Ehsan
MozReview-Commit-ID: CkbEyTaldtS

--HG--
extra : rebase_source : 43b161ef569efe0010940e56de5cb3d31cbc1793
2016-12-08 22:51:58 +08:00
Phil Ringnalda
ce9ad65e4e Merge m-c to autoland
--HG--
rename : xpcom/build/nsXREAppData.h => xpcom/build/XREAppData.h
rename : xpcom/glue/AppData.cpp => xpcom/glue/XREAppData.cpp
extra : rebase_source : 84774ad3fb5a596ad5c105cc0f3b269371c4308e
2016-12-13 19:28:57 -08:00
Phil Ringnalda
36bfd0a8da Merge m-i to m-c, a=merge
MozReview-Commit-ID: ODjsKqdMLM
2016-12-13 19:25:01 -08:00
JW Wang
b4d0509caa Bug 1321744. Part 4 - fix comments. r=gerald
MozReview-Commit-ID: HPIDi9tUHD3

--HG--
extra : rebase_source : c22cb4da5f3916559f3776409fdbefaf5328ac0b
2016-12-14 10:59:41 +08:00
JW Wang
d4d5d4d5bb Bug 1321744. Part 3 - remove ThenPromise and replace its use with Then. r=gerald
MozReview-Commit-ID: AsmePdCp2tC

--HG--
extra : rebase_source : e08ac48584375d2bc12f5b73a1e60f2800359ed9
extra : intermediate-source : 94e727f7cd11bb04812da3662a0ee1fd461cc832
extra : source : 5307716231f93b01c0357011f8849015d4d97d0a
2016-12-04 08:51:25 +08:00
JW Wang
fbfcb37762 Bug 1321744. Part 2 - add the ability of promise chaining to Then(). r=gerald
MozReview-Commit-ID: IaDgoWcmFRO

--HG--
extra : rebase_source : 420834ba105e2606e10f2dfef480a3586a5f8fb3
extra : intermediate-source : 1c2f25bdf9e1dcac085df830e6de7193d66dbe10
extra : source : 4bb6d68fb29d3b0c5eb3a66705b69892b1c94ad4
2016-12-13 17:07:03 +08:00
JW Wang
dea1beb2c4 Bug 1321744. Part 1 - re-implement MozPromise::Then() using the command pattern. r=gerald
MozReview-Commit-ID: 2FkjtBKjIAc

--HG--
extra : rebase_source : 9cda835345135b483640226f7a4afdbc26459a82
extra : intermediate-source : 74f5fc402b87c073d581c1a6f6798c7522809dbf
extra : source : 7e7aa2e92f1f1deb901a8e04b68de999340a772d
2016-12-02 15:41:19 +08:00
Carsten "Tomcat" Book
eb5f79ce29 Merge mozilla-central to autoland 2016-12-13 16:53:28 +01:00
JW Wang
52ec68d60c Bug 1323155 - fix data race in mCompletionPromise. r=gerald
MozReview-Commit-ID: J2TVNWvx9pb

--HG--
extra : rebase_source : 64b4f60500eafd24660141103a22693ce37dfd2b
2016-12-13 16:55:14 +08:00
Sebastian Hengst
27bd22acd7 Backed out changeset eae2252a519f (bug 1321593) for leaks, e.g. in clipboard and jetpack tests. r=backout
--HG--
rename : xpcom/build/XREAppData.h => xpcom/build/nsXREAppData.h
rename : xpcom/glue/XREAppData.cpp => xpcom/glue/AppData.cpp
2016-12-12 22:10:17 +01:00
Benjamin Smedberg
4df1abc2c0 Bug 1321593 part A - Refactor nsXREAppData: 1) make nsXREAppData strongly own its members 2) rename it to mozilla::XREAppData 3) separate out the static compiled data into StaticXREAppData 4) Remove XRE_CreateAppData and XRE_FreeAppData 5) remove the struct size and related size-checking code which was only ever useful for cross-version compatibility, r=glandium
MozReview-Commit-ID: CQv1UrSaw4D

--HG--
rename : xpcom/build/nsXREAppData.h => xpcom/build/XREAppData.h
rename : xpcom/glue/AppData.cpp => xpcom/glue/XREAppData.cpp
extra : rebase_source : c909ee206d31b110c6a38cc466ef24a465ee2ae5
extra : histedit_source : e86c3900412229f99ade29c5b8e3943d943ec718
2016-12-02 09:07:24 -05:00
Andrew McCreight
fccb0645ed Bug 1323042 - forbid MOZ_COUNT_{CTOR,DTOR} for nsISupports classes; r=froydnj 2016-12-12 09:27:58 -05:00
Nathan Froyd
826598caba Backout aba6c73511a2 (bug 1307961) for massive test bustage resulting in a CLOSED TREE; r=alltheorange 2016-12-12 08:45:46 -05:00
Andrew McCreight
e31b5489da Bug 1307961 - require consistent bloatview reporting for nsISupports classes; r=froydnj 2016-12-12 07:58:33 -05:00
Carsten "Tomcat" Book
4434d5f7c1 merge mozilla-inbound to mozilla-central a=merge 2016-12-09 13:32:03 +01:00
Michael Layzell
c6fccac579 Bug 1299489 - Change nsTArray to use a custom iterator based on index instead of pointers to improve iterator invalidation safety of ranged for loops, r=froydnj
MozReview-Commit-ID: CahPOcRYvES
2016-12-08 15:54:45 -10:00
Andrew McCreight
75d98cae1d Bug 1322536 - Make some mScanInProgress checks fatal in release builds. r=smaug
MozReview-Commit-ID: 2hNtePfSxkF

--HG--
extra : rebase_source : 7434f50ef61e01297c87be15e34ecdb00acdb9f6
2016-12-08 11:03:42 -10:00
Tomislav Jurin
348bfffc19 Bug 1296189 - Replace NS_RUNTIMEABORT("some string literal message") with MOZ_CRASH(). r=froydnj 2016-12-02 13:46:53 -08:00
Ben Kelly
6db09bc23b Bug 1134372 P2 Verify that cloned pipe streams can be read at different rates. r=froydnj 2016-12-02 10:41:33 -08:00