Commit Graph

15360 Commits

Author SHA1 Message Date
Carsten "Tomcat" Book
d25a5baeb8 merge mozilla-inbound to mozilla-central a=merge 2016-09-22 11:55:12 +02:00
David Anderson
4c2e28b8b6 Add XRE_IsGPUProcess. (bug 1301266 part 1, r=billm) 2016-09-21 22:38:40 -07:00
Eric Faust
121151ec67 Bug 1263595 - Avoid deadlock between the JIT and the gecko profiler on win64. (r=froydnj) 2016-09-15 21:35:14 -07:00
Nathan Froyd
a9c993ccd1 Bug 1298855 - part 2 - remove prcpucfg.h #include from xpt_arena.h; r=erahm
Nothing else in this code requires prcpucfg.h at this point, and we
might as well remove nspr.h from xpt_xdr.cpp while we're at it.
2016-09-21 18:16:10 -04:00
Nathan Froyd
c0268e7859 Bug 1298855 - part 1 - use EndianUtils.h in xpt_xdr.cpp; r=erahm
More obvious, slightly more efficient, and dispensing with NSPR macro
goo is always a good thing.
2016-09-21 18:16:10 -04:00
Andrea Marchesini
d62e084ce0 Bug 1288997 - memory blob should not be shared across processes - part 2 - SlicedInputStream, r=froydnj 2016-07-25 22:41:02 +02:00
Matt Woodrow
64a71f90da Bug 1288618 - Part 7: Initialize AbstractThread in the GPU process. r=dvander 2016-09-21 21:24:43 +12:00
Matt Woodrow
74b953d168 Bug 1288618 - Part 6: Avoid unnecessarily allocating a TailDispatcher for XPCOMThreadWrapper. r=bholley 2016-09-21 21:24:43 +12:00
Carsten "Tomcat" Book
f918af64da Backed out 16 changesets (bug 1288618) for bustage on a CLOSED TREE
Backed out changeset 06187d250f7a (bug 1288618)
Backed out changeset 2a47f8ea1d89 (bug 1288618)
Backed out changeset e179c8e8265d (bug 1288618)
Backed out changeset 25396a1af922 (bug 1288618)
Backed out changeset e98f835c6ee5 (bug 1288618)
Backed out changeset 24df0e89b273 (bug 1288618)
Backed out changeset f8bbdabdb6da (bug 1288618)
Backed out changeset 8b0adeab93df (bug 1288618)
Backed out changeset 95f23366de82 (bug 1288618)
Backed out changeset 63a9c689e1d5 (bug 1288618)
Backed out changeset 8f67443dccb8 (bug 1288618)
Backed out changeset 4e7fe69d5f45 (bug 1288618)
Backed out changeset 53b113acee42 (bug 1288618)
Backed out changeset 2583ae4e2e3b (bug 1288618)
Backed out changeset 75a61d0e71b7 (bug 1288618)
Backed out changeset da740b4fd484 (bug 1288618)
2016-09-21 08:44:11 +02:00
Matt Woodrow
97147af527 Bug 1288618 - Part 7: Initialize AbstractThread in the GPU process. r=dvander
--HG--
extra : rebase_source : fd702b96f36645a2b0d8a7a4e4afc74c063a68c4
2016-09-21 15:36:09 +12:00
Matt Woodrow
4caf5b9aa0 Bug 1288618 - Part 6: Avoid unnecessarily allocating a TailDispatcher for XPCOMThreadWrapper. r=bholley
--HG--
extra : rebase_source : 38596e6ebfc7eb2fb863e242cee718060abe470c
2016-09-21 15:36:09 +12:00
Michael Layzell
030fcbd018 Bug 1303472 - Add a move constructor to nsCOMPtr, r=froydnj
MozReview-Commit-ID: 6ECLDmA9Ol
2016-09-20 11:36:14 -04:00
Michael Layzell
0f0181c55e Bug 1295762 - Part 2: Add tests to ensure that the layout of rust's ns[C]String matches C++'s, r=froydnj
MozReview-Commit-ID: FH18iSXkhX5
2016-09-20 11:26:43 -04:00
Michael Layzell
dace0b2e39 Bug 1295762 - Part 1: Implement rust bindings to XPCOM's string types, r=froydnj
MozReview-Commit-ID: 7fnWSc3AzlR
2016-09-20 11:26:43 -04:00
Carsten "Tomcat" Book
2c29ecf6ea Merge mozilla-central to autoland
--HG--
rename : browser/themes/shared/controlcenter/conn-degraded.svg => browser/themes/shared/controlcenter/connection.svg
rename : browser/themes/shared/identity-block/identity-mixed-active-loaded.svg => browser/themes/shared/identity-block/connection-mixed-active-loaded.svg
rename : browser/themes/shared/identity-block/identity-mixed-passive-loaded.svg => browser/themes/shared/identity-block/connection-mixed-passive-loaded.svg
rename : browser/themes/shared/identity-block/identity-secure.svg => browser/themes/shared/identity-block/connection-secure.svg
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/ANRReporter.java => mobile/android/base/java/org/mozilla/gecko/ANRReporter.java
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/GeckoJavaSampler.java => mobile/android/base/java/org/mozilla/gecko/GeckoJavaSampler.java
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/widget/SwipeDismissListViewTouchListener.java => mobile/android/base/java/org/mozilla/gecko/widget/SwipeDismissListViewTouchListener.java
rename : taskcluster/ci/signing/signing.yml => taskcluster/ci/build-signing/android-signing.yml
rename : taskcluster/ci/signing/kind.yml => taskcluster/ci/build-signing/kind.yml
extra : rebase_source : d069a089538d77ef97a2ea10095f66eb814879eb
2016-09-21 12:10:25 +02:00
Cervantes Yu
41c36d9c23 Bug 1303940 - MessageLoop::PostDelayedTask() should schedule the runnable on the target thread instead of the current thread. r=froydnj
MozReview-Commit-ID: 8yCY9WSwbAJ

--HG--
extra : rebase_source : 126184b84868977df8b9864eb158a3ad14052365
2016-09-20 14:00:18 +08:00
Andi-Bogdan Postelnicu
9b7638bfd4 Bug 1301333 - mark Initialize as initialisation function for CycleCollectedJSContext. r=mccr8
MozReview-Commit-ID: BRO2gsJRNjk

--HG--
extra : rebase_source : 22f027261538bf1a3e39d8bd02fd93cda61fe693
2016-09-16 13:31:37 +03:00
Wes Kocher
da7b1c61a1 Merge inbound to central, a=merge 2016-09-19 15:51:39 -07:00
Valentin Gosu
c0e2f75813 Bug 1239686 - Add method to set logging file at runtime r=nfroyd
* Only allows setting the log file at runtime if not set by an Env Var
* LogModulePrefWatcher will watch logging.config. prefs and call into Logging.cpp to set the log file, sync or timestamp
* Log files set by pref will have a -main.PID or -child.PID suffix
* If the logging.config.clear_on_startup pref is true, prefs will be reset upon restart.
MozReview-Commit-ID: CWJujX4jm2A
2016-09-19 17:39:47 +02:00
ffxbld
857d1ac980 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2016-09-19 09:45:57 -04:00
Andi-Bogdan Postelnicu
cbfe4ec772 Bug 1282408 - Add ignore-initialization-check annotation to mCurrPi from CCGraphBuilder. r=mccr8
MozReview-Commit-ID: FFgmluIyvbs
2016-09-19 16:23:40 +03:00
Xidorn Quan
7d4ca9c88b Bug 1303302 - Add IsDestructible trait in TypeTraits and use it for refcounted type static check. r=froydnj
MozReview-Commit-ID: G3YFhrJngq0

--HG--
extra : rebase_source : da0aa325eb7772c1a156440ed46be9d0d429c91e
2016-09-16 17:23:55 +10:00
Phil Ringnalda
6beabc555f Backed out changeset 48694b762a84 (bug 1263595) for -Werror bustage
CLOSED TREE
2016-09-15 22:04:50 -07:00
Eric Faust
c725e729c5 Bug 1263595 - Avoid deadlock between the JIT and the gecko profiler on win64. (r=froydnj) 2016-09-15 21:35:14 -07:00
Eric Rahm
395fa9e2ed Bug 1301742 - Improve UTF-16 to UTF-8 conversion speed. r=froydnj
This adds an SSE2 optimized path for UTF-16 strings that can be trivially
converted to UTF-8 (they contain no characters > 0X7F). It has a
speedup for the case where many of the leading characters are < 0X80 and
should have the same performance in the worst-case scenario where the first
character is > 0X7F.
2016-09-15 15:46:29 -07:00
Byron Campen [:bwc]
60820e4a14 Bug 1157323 - Part 6: Some comment improvements. r=froydnj
MozReview-Commit-ID: GDLuJS0Wlgh

--HG--
extra : rebase_source : 6156b6ab99aa7b429bec55b0e32500074d59f7a6
extra : source : 32ed23f6341788882a076134a62ae5717c2fbf02
2016-08-05 13:46:07 -05:00
Byron Campen [:bwc]
1a6b8f0e4e Bug 1157323 - Part 5: Remove some unnecessary members. r=froydnj
MozReview-Commit-ID: Fhkq0CZoqQP

--HG--
extra : rebase_source : fb0624ad264173656de1c28ebbafcc509533ebb2
2016-08-05 13:39:34 -05:00
Byron Campen [:bwc]
0f00611fff Bug 1157323 - Part 4: Stop modifying mTimeout/mDelay from the TimerThread, plus some simplification. r=froydnj
MozReview-Commit-ID: 1pMCKLi9DLZ

--HG--
extra : rebase_source : 03eabab8f39865bdb2489a96c809abb99b1fb7d9
2016-08-05 12:50:00 -05:00
Byron Campen [:bwc]
d317470863 Bug 1157323 - Part 3: Do not allow mTimeout to change while a timer is in the queue. r=froydnj
MozReview-Commit-ID: 3ZyikUsix8D

--HG--
extra : rebase_source : 94a71aae125f541ef1aee962b1aae69c6e326a42
2016-08-05 10:07:38 -05:00
Byron Campen [:bwc]
0cf5031cd7 Bug 1157323 - Part 2: Factor nsTimerImpl into two classes, so we don't need to do racy stuff in nsTimerImpl::Release. r=froydnj
MozReview-Commit-ID: DAe4TpMqBpA

--HG--
extra : rebase_source : 4caeb1ffc41b0704e5c1c111ef869d8edfb6d30c
2016-07-20 15:16:40 -05:00
Byron Campen [:bwc]
f6af4a9282 Bug 1157323 - Part 1: Make TestTimers a unit-test. r=froydnj
MozReview-Commit-ID: HPdP3muvzU8

--HG--
extra : rebase_source : a4728b9a4fdf1b1de354c04351d35dfb58edf693
2016-06-23 17:05:40 -05:00
Gerald Squelart
3aef8d49e3 Bug 1247056 - NS_ERROR_DOM_MEDIA_CUBEB_INITIALIZATION_ERR - r=jwwang
MozReview-Commit-ID: ykIi2lmQJ2

--HG--
extra : rebase_source : f3bd7a7f0b0b02e5e36faa690627f116a77d3bb0
2016-09-18 19:30:06 -07:00
Thomas Wisniewski
ba6cb5196e Bug 1305202 - Use NullString() more and remove superfluous Truncates(). r=smaug 2016-09-23 21:10:01 -04:00
Wes Kocher
b20dd04b94 Backed out 13 changesets (bug 1247056) for WinXP bc7 failures in browser_decoderDoctor.js CLOSED TREE
Backed out changeset ff3538fd40fe (bug 1247056)
Backed out changeset a444d7cb1091 (bug 1247056)
Backed out changeset 03553484a062 (bug 1247056)
Backed out changeset 001b42631702 (bug 1247056)
Backed out changeset d0d71a80a029 (bug 1247056)
Backed out changeset cd40559e25d7 (bug 1247056)
Backed out changeset b8857adc4003 (bug 1247056)
Backed out changeset 1f3b037bfd1f (bug 1247056)
Backed out changeset c5cd9597ec02 (bug 1247056)
Backed out changeset 2bfe3aeb9f59 (bug 1247056)
Backed out changeset 934d7c9628f1 (bug 1247056)
Backed out changeset 63094a80bee7 (bug 1247056)
Backed out changeset 511ed53eee9a (bug 1247056)
2016-09-26 12:15:55 -07:00
Gerald Squelart
782d22e09d Bug 1247056 - NS_ERROR_DOM_MEDIA_CUBEB_INITIALIZATION_ERR - r=jwwang
MozReview-Commit-ID: ykIi2lmQJ2

--HG--
extra : histedit_source : b6bb0aeb246e6b304b3379a5a285ab74144a9014
2016-09-18 19:30:06 -07:00
Terrence Cole
0edc10380c Bug 1297558 - Use a read barrier on Heap to ExposeToActiveJS r=sfink r=mccr8 2016-02-07 09:08:55 -08:00
Wes Kocher
7c3b68eebf Backed out changeset 92d09cb049f5 (bug 1310056) for cpp failures a=backout 2016-10-20 14:32:04 -07:00
Aaron Klotz
5f919ffa25 Bug 1310056: Part 1 - DllInterceptor improvements to support InSendMessageEx; r=m_kato
--HG--
extra : amend_source : 65fbbe2188b320e62407c92ca7fd63ea0ac8c555
2016-10-13 15:04:48 -06:00
Ryan Hunt
e7c126d7a0 Bug 1313978 - Don't use Preferences in MainThreadIdlePeriod until they are available r=smaug 2016-10-31 17:30:38 -05:00
Nicolas B. Pierron
395abf823f Bug 1288104 part 2 - Instrument SRICheckDataVerifier to load/save the computed hash from the bytecode cache. r=francois 2016-10-20 09:44:33 +00:00
Terrence Cole
1a8989f3c0 Bug 1004276 - Assert that we do not GC in the wrong parts of the CC; r=mccr8
--HG--
extra : rebase_source : f5a339a1c7e356e5d726b5323b860f3cbe490ec3
2014-04-30 16:06:25 -07:00
Boris Zbarsky
0fd831e559 Bug 1302304. Remove IDL bits that reference nsIDOMMediaError; it's not needed anymore. r=bkelly 2016-09-15 11:41:35 -04:00
Carsten "Tomcat" Book
571b01b867 Backed out changeset fdee8d1538b0 (bug 1288618) 2016-09-15 16:34:10 +02:00
Carsten "Tomcat" Book
6155a378e7 Backed out changeset 30e2b2eea845 (bug 1288618) 2016-09-15 16:34:09 +02:00
Matt Woodrow
0f949621e5 Bug 1288618 - Part 7: Initialize AbstractThread in the GPU process. r=dvander 2016-09-15 23:17:59 +12:00
Matt Woodrow
9c7f101c32 Bug 1288618 - Part 6: Avoid unnecessarily allocating a TailDispatcher for XPCOMThreadWrapper. r=bholley 2016-09-15 23:17:59 +12:00
Christian Holler (:decoder)
3c7149e85d Bug 1289194 - Experimental LibFuzzer integration. r=glandium
MozReview-Commit-ID: 9njDcbltyow

--HG--
extra : rebase_source : 774d25f2ac4e4b1a876e48159333188bc722f940
2016-09-01 15:07:01 +02:00
Jan de Mooij
7f794780e0 Bug 1302448 part 2 - Rename XPCJSRuntime to XPCJSContext. r=mrbkap
--HG--
rename : js/xpconnect/src/XPCJSRuntime.cpp => js/xpconnect/src/XPCJSContext.cpp
extra : rebase_source : e6b435ab1ca2739e340669195dff77c561ea573e
2016-09-14 15:48:17 +02:00
Jan de Mooij
a53986bf29 Bug 1302448 part 1 - Rename CycleCollectedJSRuntime to CycleCollectedJSContext. r=mccr8
--HG--
rename : xpcom/base/CycleCollectedJSRuntime.cpp => xpcom/base/CycleCollectedJSContext.cpp
rename : xpcom/base/CycleCollectedJSRuntime.h => xpcom/base/CycleCollectedJSContext.h
extra : rebase_source : 075214b5057f151520926715b6154e99ae80a0b3
2016-09-14 15:47:32 +02:00
Gabriele Svelto
6a9ddd1201 Bug 1301667 - Increase the low memory threshold under Windows and clean up the available memory tracker r=njn 2016-09-14 13:52:45 +02:00
Carsten "Tomcat" Book
d2c3fe7fd3 merge autoland to mozilla-central a=merge 2016-09-14 12:07:02 +02:00
Ben Kelly
ae456e0d5c Bug 1300118 P5 Expose the TaskQueue backlog ImpreciseLengthForHeuristics(). r=bholley 2016-09-13 20:12:15 -07:00
Ben Kelly
48310e4429 Bug 1300118 P4 Make nsThread expect NS_DISPATCH_AT_END similar to nsThreadPool. r=bholley 2016-09-13 20:12:15 -07:00
Ben Kelly
11d56a06f0 Bug 1300118 P3 Fix TaskQueue sCurrentThread TLS handling for nsIEventTarget targets. r=jwwang 2016-09-13 20:12:15 -07:00
Ben Kelly
e03450312b Bug 1300118 P2 Make TaskQueue implement nsIEventTarget. r=bholley 2016-09-13 20:12:15 -07:00
Ben Kelly
f0d440f9d1 Bug 1300118 P1 Make TaskQueue deliver runnables to nsIEventTarget. r=bholley 2016-09-13 20:12:15 -07:00
Ben Kelly
46960c09a1 Bug 1300118 P0 Rename NS_DISPATCH_TAIL to NS_DISPATCH_AT_END to avoid confusion with AbstractThread::TailDispatch. r=bholley 2016-09-13 20:12:15 -07:00
Ryan VanderMeulen
739f3dac5a Merge m-c to autoland. a=merge 2016-09-13 20:46:39 -04:00
David Anderson
f80736e0c8 Shutdown XPCOM-dependent resources in ImageBridgeChild at the appropriate time. (bug 1298938 part 3.1, r=mattwoodrow)
--HG--
extra : rebase_source : 9579e1ca6ec1af2fac7cd0fc4574b849cc8b8e12
2016-09-13 16:30:57 -07:00
Andrew McCreight
f9e6d19361 Bug 1299934 - Run shutdown collection in workers in opt builds. r=froydnj,smaug
We skip running shutdown collection on the main thread, because we're
exiting right after, but the process still continues when we shut down
a worker, so we should always do collections there.

MozReview-Commit-ID: IQZItm1qWXW

--HG--
extra : rebase_source : 4fd89e36db124a524c240e806a885dee3b68979e
2016-09-08 13:04:30 -07:00
Andrew McCreight
d9ec3221fa Bug 1301796 - Remove racy code in nsCycleCollector::RegisterJSRuntime. r=smaug
MozReview-Commit-ID: 18MW4EYbaC8

--HG--
extra : rebase_source : a8e4b2fbf14f5ffd6acde32bf3ba96443c8ab5d4
2016-09-09 15:14:15 -07:00
Jean-Yves Avenard
2dbf4a63af Bug 1299072: P2. Add media decoding error types. r=gerald
MozReview-Commit-ID: KW2pWsXtffp

--HG--
extra : rebase_source : 0d8878c00d165250a25a6be0fd9c965539a077ce
2016-09-09 23:08:45 +10:00
Terrence Cole
6af2f7d660 Bug 1257387 - Move OOM callback annotation to the common runtime for workers; r=mccr8
--HG--
extra : rebase_source : 3278a5bc32ce245003b890fbfbbf4f32e3d42944
2016-09-13 10:57:07 -07:00
Jon Coppeard
d97a19687b Bug 1298639 - Use bytecode offsets rather than direct pointer in profiling API r=shu 2016-09-13 14:06:46 +02:00
Josh Aas
0a5546331b Bug 337051: Add origin and referrer URL metadata to downloaded files on OS X. r=mstange,pamadini 2016-09-13 02:25:36 -05:00
Wes Kocher
42f4e48aee Backed out 6 changesets (bug 1300118) for frequent Windows VM Xpcshell failures a=backout CLOSED TREE
Backed out changeset 24f714ad248c (bug 1300118)
Backed out changeset 6fe61ed092e8 (bug 1300118)
Backed out changeset dd18e29b64bf (bug 1300118)
Backed out changeset 50882fb40551 (bug 1300118)
Backed out changeset 60e82c1780e5 (bug 1300118)
Backed out changeset e40df52925d5 (bug 1300118)

--HG--
extra : amend_source : 7475f45d827654abe309696d73fd86e75a497c32
2016-09-12 16:34:41 -07:00
Sebastian Hengst
c2d659643b Backed out changeset 8c9117de1e7f (bug 1300152) 2016-09-09 16:53:45 +02:00
Wes Kocher
14246ed95a Backed out 7 changesets (bug 1298938) for mass leaks a=bustage CLOSED TREE
Backed out changeset d710b5ac1e13 (bug 1298938)
Backed out changeset df832e32e7aa (bug 1298938)
Backed out changeset 3f6883401be4 (bug 1298938)
Backed out changeset e43fc0029b90 (bug 1298938)
Backed out changeset 6dd0b4b22b23 (bug 1298938)
Backed out changeset 81e994db6b8c (bug 1298938)
Backed out changeset a757098353c6 (bug 1298938)
2016-09-08 13:28:14 -07:00
David Anderson
435ec16468 Shutdown XPCOM-dependent resources in ImageBridgeChild at the appropriate time. (bug 1298938 part 3.1, r=mattwoodrow)
--HG--
extra : rebase_source : 1ea89a87362f86b7730f6a745dbcacb634806e07
2016-09-08 11:28:05 -07:00
Andrea Marchesini
ed81ee1595 Bug 1301025 - Change string allocation to be similar to nsTArray allocation, r=smaug, r=froydnj 2016-09-08 19:49:49 +02:00
Makoto Kato
893f6698da Bug 1180684 - Part 1. Analyze MOV with GS. r=aklotz
Allow MOV with GS prefix on x64.  Windows 10 uses this opcode on GetKeyState().

MozReview-Commit-ID: CqDSxmWdkiH

--HG--
extra : rebase_source : aa83b2b4c141730eb89f29cad61af79e66cb7a71
2016-09-07 16:15:58 +09:00
Ted Mielczarek
d98ac10c0c bug 1300152 - Add nsIDebug2::rustPanic to allow triggering Rust panic for testing. r=froydnj
For testing purposes it will be useful to be able to trigger crashes in Rust
code. Being able to trigger a panic seems like a good place to start. This
will make it easier to validate improvements in crash reporting.

MozReview-Commit-ID: Bh5rBieLLWW

--HG--
rename : toolkit/crashreporter/test/unit/test_crash_moz_crash.js => toolkit/crashreporter/test/unit/test_crash_rust_panic.js
extra : rebase_source : 7cfc08e62de49de869b97ae96630db573f882f18
2016-09-02 13:22:21 -04:00
Sebastian Hengst
5aaa326c3d merge mozilla-central to mozilla-inbound to fix spidermonkey bustage. r=merge a=merge 2016-09-07 18:49:04 +02:00
Sebastian Hengst
a66df0b0c2 Backed out changeset 95e68b473e91 (bug 1289194) for failure to process moz.build file. r=backout a=backout
MozReview-Commit-ID: GhfzNoiE808
2016-09-07 18:45:40 +02:00
Michael Layzell
36e08437d0 Bug 1018486 - Part 8: Various other changes, r=smaug
MozReview-Commit-ID: B0dsomkWgEk
2016-09-07 10:50:45 -04:00
Christian Holler (:decoder)
055c4fb1dd Bug 1289194 - Experimental LibFuzzer integration. r=glandium
--HG--
extra : histedit_source : a632f3ff76e07562d1854bc68b50499e4b4667a0
2016-09-01 15:07:01 +02:00
Nicholas Nethercote
34dcc7b852 Bug 1299384 - Use MOZ_MUST_USE with NS_warn_if_impl(). r=erahm.
This change avoids lots of false positives for Coverity's CHECKED_RETURN
warning, caused by NS_WARN_IF's current use in both statement-style and
expression-style.

In the case where the code within the NS_WARN_IF has side-effects, I made the
following change.

> NS_WARN_IF(NS_FAILED(FunctionWithSideEffects()));
> -->
> Unused << NS_WARN_IF(NS_FAILED(FunctionWithSideEffects()));

In the case where the code within the NS_WARN_IF lacks side-effects, I made the
following change.

> NS_WARN_IF(!condWithoutSideEffects);
> -->
> NS_WARNING_ASSERTION(condWithoutSideEffects, "msg");

This has two improvements.
- The condition is not evaluated in non-debug builds.
- The sense of the condition is inverted to the familiar "this condition should
  be true" sense used in assertions.

A common variation on the side-effect-free case is the following.

> nsresult rv = Fn();
> NS_WARN_IF_(NS_FAILED(rv));
> -->
> DebugOnly<nsresult rv> = Fn();
> NS_WARNING_ASSERTION(NS_SUCCEEDED(rv), "Fn failed");

--HG--
extra : rebase_source : 58788245021096efa8372a9dc1d597a611d45611
2016-09-02 17:12:24 +10:00
Ben Kelly
6cb86a3834 Bug 1300118 P5 Expose the TaskQueue backlog ImpreciseLengthForHeuristics(). r=bholley 2016-09-12 12:32:21 -07:00
Ben Kelly
b825ef5df3 Bug 1300118 P4 Make nsThread expect NS_DISPATCH_AT_END similar to nsThreadPool. r=bholley 2016-09-12 12:32:21 -07:00
Ben Kelly
0dbb87a4ff Bug 1300118 P3 Fix TaskQueue sCurrentThread TLS handling for nsIEventTarget targets. r=jwwang 2016-09-12 12:32:21 -07:00
Ben Kelly
98d60c36f2 Bug 1300118 P2 Make TaskQueue implement nsIEventTarget. r=bholley 2016-09-12 12:32:20 -07:00
Ben Kelly
621f6bacd6 Bug 1300118 P1 Make TaskQueue deliver runnables to nsIEventTarget. r=bholley 2016-09-12 12:32:20 -07:00
Ben Kelly
da78ad445e Bug 1300118 P0 Rename NS_DISPATCH_TAIL to NS_DISPATCH_AT_END to avoid confusion with AbstractThread::TailDispatch. r=bholley 2016-09-12 12:32:20 -07:00
Ben Kelly
a8a4ae3c4f Backout rev 5c7368370ff9 to 980659720b86 (bug 1300118 and bug 1300658) for incorrect bug number in commit message. r=me 2016-09-12 12:29:17 -07:00
Ben Kelly
b8add141f7 Bug 1300118 P5 Expose the TaskQueue backlog ImpreciseLengthForHeuristics(). r=bholley 2016-09-12 11:21:01 -07:00
Ben Kelly
bf25ed725c Bug 1300118 P4 Make nsThread expect NS_DISPATCH_AT_END similar to nsThreadPool. r=bholley 2016-09-12 11:21:01 -07:00
Ben Kelly
6ef08d4672 Bug 1300118 P3 Fix TaskQueue sCurrentThread TLS handling for nsIEventTarget targets. r=jwwang 2016-09-12 11:21:01 -07:00
Ben Kelly
64919e3546 Bug 130118 P2 Make TaskQueue implement nsIEventTarget. r=bholley 2016-09-12 11:21:01 -07:00
Ben Kelly
157b0fe1ed Bug 1300118 P1 Make TaskQueue deliver runnables to nsIEventTarget. r=bholley 2016-09-12 11:21:01 -07:00
Ben Kelly
396475783e Bug 1300118 P0 Rename NS_DISPATCH_TAIL to NS_DISPATCH_AT_END to avoid confusion with AbstractThread::TailDispatch. r=bholley 2016-09-12 11:21:01 -07:00
Gregory Moore
b5da131303 Bug 1298709 - Remove redundant call of get() on smart pointer in nsCategoryManager.cpp. r=froydnj 2016-09-02 15:22:09 -07:00
Olli Pettay
8744d0ccf8 Bug 1298661, let meta-stable state runnables run during sync loops, r=baku 2016-09-05 18:54:04 +03:00
Andrew McCreight
3c2b258ae2 Bug 1301301, part 2 - Add Scope as an AddToCCKind. r=smaug
Bug 1263355 changed scopes from JSObjects (which are represented in
the CC graph) to a new kind of GC thing. Many objects can share the
same scope, so they will end up calling the scope trace method
repeatedly, causing cycle collections to become much slower in some
cases.

MozReview-Commit-ID: CFO87zXjwgu
2016-09-23 15:42:13 -07:00
Andrew McCreight
5b9c57b7a2 Bug 1301301, part 1 - Unify NoteJSObject and NoteJSScript into NoteJSChild. r=smaug
This will let my next patch pass in other GC things.

This should not change behavior in any important way.

MozReview-Commit-ID: FykviKKvQzI
2016-09-23 15:42:13 -07:00
Laszlo Ersek
b3ba117711 Bug 1304962 - fix argument processing in AARCH64 xptcall; r=froydnj
The invoke_copy_to_stack() function passes incorrect "stack_args" and
"end" arguments to the alloc_word() utility function, for parameter types
T_I8..T_I64, T_U8..T_U64, T_BOOL, T_CHAR and T_WCHAR.

Namely, the "end" input parameter of invoke_copy_to_stack(), which is
currently incorrectly passed as "end" to alloc_word(), points to the very
end of the entire exchange area between _NS_InvokeByIndex() and
invoke_copy_to_stack(). However, alloc_word()'s "end" parameter should
point to the end of the "ireg" (integer registers) sub-area of the
exchange area. That is, "ireg_end" should be passed to alloc_word() as
"end".

Because invoke_copy_to_stack()'s "end" input parameter is strictly greater
than "ireg_end", alloc_word() will happily trample over the "freg"
(floating point registers) area, on the above-mentioned type branches,
given a large enough "paramCount".

Similarly, as second argument, "stack_args" should be passed to
alloc_word(), pointing to the next available stack slot, for spilled-over
arguments. Passing "stk", which initially points to the base of the entire
exchange area (and hence the base of the "ireg" area) makes no sense.

The two other alloc_word() calls in the function are correct. So
centralize all calls to alloc_word() to a single location -- thereby
ending up with a sole call site per alloc_XXX() function --, and compute
only the last argument, "word", conditionally.

This fixes an obscure SIGSEGV in AARCH64 Firefox. Triggering the bug
requires a target function with seven integer-like parameters (not
counting the implicit "this" -- aka "that" -- parameter), followed by at
least one parameter of the above buggy types. nsIOService::NewChannel2()
is such a target function, for example.

DONTBUILD because NPTOB
2016-09-24 06:36:16 +02:00
Michael Layzell
78329bec42 Bug 1299261 - De-duplicate code in rust ns[C]String binding layout verification code, r=bholley
MozReview-Commit-ID: 1qJ2njeUrpS
2016-09-23 14:55:32 -04:00
Carsten "Tomcat" Book
70d30f62af Backed out 12 changesets (bug 1247056) for windows bc7 test failures
Backed out changeset 13434fa439d1 (bug 1247056)
Backed out changeset e1e5be2fc586 (bug 1247056)
Backed out changeset f48fd90bf839 (bug 1247056)
Backed out changeset 8e164f6d6c5c (bug 1247056)
Backed out changeset 024d7295b6f4 (bug 1247056)
Backed out changeset 32fc8121ca20 (bug 1247056)
Backed out changeset 49558f78782a (bug 1247056)
Backed out changeset 2b3dce1c98f6 (bug 1247056)
Backed out changeset be036a725d3a (bug 1247056)
Backed out changeset 344a41f87a23 (bug 1247056)
Backed out changeset 0ce3c5cb6e6a (bug 1247056)
Backed out changeset 01aa7f5bde71 (bug 1247056)
2016-09-23 16:02:54 +02:00
Gerald Squelart
d6fe82c7bf Bug 1247056 - NS_ERROR_DOM_MEDIA_CUBEB_INITIALIZATION_ERR - r=jwwang
MozReview-Commit-ID: ykIi2lmQJ2

--HG--
extra : histedit_source : 6fe08069ebed16c89bdb37b297ba3d4d863b3be2
2016-09-18 19:30:06 -07:00
Nicholas Nethercote
b71747b2ac Bug 1299727 - Rename NS_WARN_IF_FALSE as NS_WARNING_ASSERTION. r=erahm.
The new name makes the sense of the condition much clearer. E.g. compare:

  NS_WARN_IF_FALSE(!rv.Failed());

with:

  NS_WARNING_ASSERTION(!rv.Failed());

The new name also makes it clearer that it only has effect in debug builds,
because that's standard for assertions.

--HG--
extra : rebase_source : 886e57a9e433e0cb6ed635cc075b34b7ebf81853
2016-09-01 15:01:16 +10:00
Nicholas Nethercote
819433bae0 Bug 1299389 - Replace some raw pointers in nsThreadManager. r=froydnj.
nsThreadManager::get() can return a reference. This lets us remove some
redundant assertions.

nsThreadArray elements can be NotNull<>s.

--HG--
extra : rebase_source : fd49010167101bc15f7f6d01bf95fd63b81d60fb
2016-06-10 16:04:49 +10:00
Phil Ringnalda
d5a11536ff Back out changeset 58b07057fe25 (bug 1299159) on suspicion of breaking Windows PGO builds
CLOSED TREE
2016-09-01 19:43:22 -07:00
Benjamin Smedberg
388e11f997 Bug 1299159 - Stop exporting *_NSModule from xul.dll, r=glandium
MozReview-Commit-ID: HXxC5Ogquxn

--HG--
extra : rebase_source : 8998c61cfe47efd95d318030887726394b92a4a8
2016-08-31 12:48:52 -04:00
Wes Kocher
513c6f555b Backed out 2 changesets (bug 1295762) for build bustage a=bustage CLOSED TREE
Backed out changeset b4b5fa96e8ee (bug 1295762)
Backed out changeset 30bb58fbbeb8 (bug 1295762)
2016-08-30 16:17:30 -07:00
Michael Layzell
bf8a839325 Bug 1295762 - Part 2: Add tests to ensure that the layout of rust's ns[C]String matches C++'s, r=froydnj
MozReview-Commit-ID: FH18iSXkhX5
2016-08-30 16:18:55 -04:00
Michael Layzell
7ebbb65581 Bug 1295762 - Part 1: Implement rust bindings to XPCOM's string types, r=froydnj
MozReview-Commit-ID: 7fnWSc3AzlR
2016-08-30 16:18:54 -04:00
Eric Rahm
4067fc4876 Bug 1295747 - Use CheckedInt in size calculation. r=froydnj 2016-08-30 10:43:27 -07:00
Honza Bambas
e4eacf065d Bug 956338 - Add checks to WeakPtr/nsWeakReference and related classes to assert single-thread usage. r=nfroyd
--HG--
extra : rebase_source : 140fa149eb94f027e9319a44be0bbee34648222a
2016-08-01 13:16:16 +02:00
Nicholas Nethercote
f1b7b1188d Bug 1297402 - Change public xpt functions to return bool instead of PRBool. r=froydnj.
--HG--
extra : rebase_source : 7517f1d9c8831e7bdf0bf0122b70496ce3348592
2016-08-25 15:59:25 +10:00
Wes Kocher
f78f2d693b Merge inbound to central, a=merge 2016-08-25 16:59:00 -07:00
Gerald Squelart
fb84b054bc Bug 1295763 - Allow ThreadSafeAutoRefCnt with XPCOM_GLUE - r=froydnj
Removed '#ifndef XPCOM_GLUE' that blocked usage of thread-safe ref-counting
from XPCOM_GLUE code.

MozReview-Commit-ID: Hm0rdTKK46l

--HG--
extra : rebase_source : cd2779d0b39c5319cfdb5d12e8f4ac6f38945e7b
2016-08-16 14:07:16 +10:00
Ryan VanderMeulen
e5adfbffe6 Merge m-c to autoland. a=merge
--HG--
rename : accessible/tests/browser/browser_caching_attributes.js => accessible/tests/browser/e10s/browser_caching_attributes.js
rename : accessible/tests/browser/browser_caching_description.js => accessible/tests/browser/e10s/browser_caching_description.js
rename : accessible/tests/browser/browser_caching_name.js => accessible/tests/browser/e10s/browser_caching_name.js
rename : accessible/tests/browser/browser_caching_relations.js => accessible/tests/browser/e10s/browser_caching_relations.js
rename : accessible/tests/browser/browser_caching_states.js => accessible/tests/browser/e10s/browser_caching_states.js
rename : accessible/tests/browser/browser_caching_value.js => accessible/tests/browser/e10s/browser_caching_value.js
rename : accessible/tests/browser/browser_events_caretmove.js => accessible/tests/browser/e10s/browser_events_caretmove.js
rename : accessible/tests/browser/browser_events_hide.js => accessible/tests/browser/e10s/browser_events_hide.js
rename : accessible/tests/browser/browser_events_show.js => accessible/tests/browser/e10s/browser_events_show.js
rename : accessible/tests/browser/browser_events_statechange.js => accessible/tests/browser/e10s/browser_events_statechange.js
rename : accessible/tests/browser/browser_events_textchange.js => accessible/tests/browser/e10s/browser_events_textchange.js
rename : accessible/tests/browser/browser_treeupdate_ariadialog.js => accessible/tests/browser/e10s/browser_treeupdate_ariadialog.js
rename : accessible/tests/browser/browser_treeupdate_ariaowns.js => accessible/tests/browser/e10s/browser_treeupdate_ariaowns.js
rename : accessible/tests/browser/browser_treeupdate_canvas.js => accessible/tests/browser/e10s/browser_treeupdate_canvas.js
rename : accessible/tests/browser/browser_treeupdate_cssoverflow.js => accessible/tests/browser/e10s/browser_treeupdate_cssoverflow.js
rename : accessible/tests/browser/browser_treeupdate_doc.js => accessible/tests/browser/e10s/browser_treeupdate_doc.js
rename : accessible/tests/browser/browser_treeupdate_gencontent.js => accessible/tests/browser/e10s/browser_treeupdate_gencontent.js
rename : accessible/tests/browser/browser_treeupdate_hidden.js => accessible/tests/browser/e10s/browser_treeupdate_hidden.js
rename : accessible/tests/browser/browser_treeupdate_imagemap.js => accessible/tests/browser/e10s/browser_treeupdate_imagemap.js
rename : accessible/tests/browser/browser_treeupdate_list.js => accessible/tests/browser/e10s/browser_treeupdate_list.js
rename : accessible/tests/browser/browser_treeupdate_list_editabledoc.js => accessible/tests/browser/e10s/browser_treeupdate_list_editabledoc.js
rename : accessible/tests/browser/browser_treeupdate_listener.js => accessible/tests/browser/e10s/browser_treeupdate_listener.js
rename : accessible/tests/browser/browser_treeupdate_optgroup.js => accessible/tests/browser/e10s/browser_treeupdate_optgroup.js
rename : accessible/tests/browser/browser_treeupdate_removal.js => accessible/tests/browser/e10s/browser_treeupdate_removal.js
rename : accessible/tests/browser/browser_treeupdate_table.js => accessible/tests/browser/e10s/browser_treeupdate_table.js
rename : accessible/tests/browser/browser_treeupdate_textleaf.js => accessible/tests/browser/e10s/browser_treeupdate_textleaf.js
rename : accessible/tests/browser/browser_treeupdate_visibility.js => accessible/tests/browser/e10s/browser_treeupdate_visibility.js
rename : accessible/tests/browser/browser_treeupdate_whitespace.js => accessible/tests/browser/e10s/browser_treeupdate_whitespace.js
rename : accessible/tests/browser/doc_treeupdate_ariadialog.html => accessible/tests/browser/e10s/doc_treeupdate_ariadialog.html
rename : accessible/tests/browser/doc_treeupdate_ariaowns.html => accessible/tests/browser/e10s/doc_treeupdate_ariaowns.html
rename : accessible/tests/browser/doc_treeupdate_imagemap.html => accessible/tests/browser/e10s/doc_treeupdate_imagemap.html
rename : accessible/tests/browser/doc_treeupdate_removal.xhtml => accessible/tests/browser/e10s/doc_treeupdate_removal.xhtml
rename : accessible/tests/browser/doc_treeupdate_visibility.html => accessible/tests/browser/e10s/doc_treeupdate_visibility.html
rename : accessible/tests/browser/doc_treeupdate_whitespace.html => accessible/tests/browser/e10s/doc_treeupdate_whitespace.html
rename : accessible/tests/browser/events.js => accessible/tests/browser/e10s/events.js
rename : browser/components/extensions/test/browser/browser_ext_pageAction_context.js => browser/components/extensions/test/browser/browser_ext_pageAction_title.js
rename : browser/components/extensions/test/browser/browser_ext_pageAction_context.js => browser/components/extensions/test/browser/head_pageAction.js
rename : dom/events/test/pointerevents/pointerevent_element_haspointercapture.html => dom/events/test/pointerevents/pointerevent_element_haspointercapture-manual.html
rename : dom/events/test/pointerevents/test_pointerevent_element_haspointercapture.html => dom/events/test/pointerevents/test_pointerevent_element_haspointercapture-manual.html
rename : gfx/thebes/DeviceManagerD3D11.cpp => gfx/thebes/DeviceManagerDx.cpp
rename : gfx/thebes/DeviceManagerD3D11.h => gfx/thebes/DeviceManagerDx.h
rename : media/webrtc/trunk/tools/gyp/test/compiler-override/compiler.gyp => media/webrtc/trunk/tools/gyp/test/compiler-override/compiler-exe.gyp
rename : media/webrtc/trunk/tools/gyp/test/mac/app-bundle/TestApp/English.lproj/InfoPlist.strings => media/webrtc/trunk/tools/gyp/test/ios/app-bundle/TestApp/English.lproj/InfoPlist-error.strings
rename : media/webrtc/trunk/tools/gyp/test/mac/app-bundle/TestApp/English.lproj/InfoPlist.strings => media/webrtc/trunk/tools/gyp/test/mac/app-bundle/TestApp/English.lproj/InfoPlist-error.strings
rename : media/webrtc/trunk/tools/gyp/test/mac/gyptest-postbuild-static-library.gyp => media/webrtc/trunk/tools/gyp/test/mac/gyptest-postbuild-static-library.py
rename : media/webrtc/trunk/tools/gyp/test/rules/src/subdir4/asm-function.asm => media/webrtc/trunk/tools/gyp/test/rules/src/subdir4/asm-function.assem
rename : mfbt/unused.h => mfbt/Unused.h
rename : testing/web-platform/tests/pointerevents/pointerevent_element_haspointercapture.html => testing/web-platform/tests/pointerevents/pointerevent_element_haspointercapture-manual.html
extra : rebase_source : a3de7d91a61df9b14fe07a89f5b0184a067549cf
2016-08-25 08:14:36 -04:00
Sebastian Hengst
e419835ca6 Backed out changeset 3114c70baccf (bug 1272498) for build failures on OS X. r=backout on a CLOSED TREE 2016-08-24 21:24:50 +02:00
Sebastian Hengst
7d4a6559ea Backed out changeset f517b043170b (bug 1272498) 2016-08-24 21:23:02 +02:00
Trevor Saunders
ecbd164f05 bug 1272498 - avoid clang's integrated assembler in the hope clang won't preprocess xptcinvoke_asm_x86_64_unix.s r=me landed on a CLOSED TREE
Also change if to If just to be careful.
2016-08-24 11:24:15 -04:00
Trevor Saunders
4b161d6bfd bug 1272498 - rewrite NS_InvokeByIndex in assembly r=froydnj 2016-08-24 10:31:51 -04:00
Nicholas Nethercote
c2306345d5 Bug 1297658 - Avoid unnecessary checking in memory reporters. r=erahm.
This patch removes checking of all the callback calls in memory reporter
CollectReport() functions, because it's not useful.

The patch also does some associated clean-up.

- Replaces some uses of nsIMemoryReporterCallback with the preferred
  nsIHandleReportCallback typedef.

- Replaces aCallback/aCb/aClosure with aHandleRepor/aData for CollectReports()
  parameter names, for consistency.

- Adds MOZ_MUST_USE/[must_use] in a few places in nsIMemoryReporter.idl.

- Uses the MOZ_COLLECT_REPORT macro in all suitable places.

Overall the patch reduces code size by ~300 lines and reduces the size of
libxul by about 37 KiB on my Linux64 builds.

--HG--
extra : rebase_source : e94323614bd10463a0c5134a7276238a7ca1cf23
2016-08-24 15:23:45 +10:00
Matthew Gregan
94df8b79e6 Bug 1296988 - Update libnestegg. r=rillian 2016-08-25 13:49:22 +12:00
Boris Chiou
238f6f1f58 Bug 1049975 - Part 1: Support null effect. r=birtles
MozReview-Commit-ID: 7ougqvbIVuD

--HG--
extra : rebase_source : 92f4095c7fb5ebcd555a2c2305a7db06024e2984
2016-07-12 11:42:49 +08:00
David Anderson
424b5eb180 Initialize nsAppShell in the GPU process. (bug 1294350 part 5, r=nfroyd) 2016-08-22 22:57:36 -07:00
David Anderson
9495e20273 Enable nsComponentManager in the GPU process. (bug 1294350 part 4, r=nfroyd) 2016-08-22 22:57:36 -07:00
David Anderson
3f96d36cdd Initialize a subset of XPCOM in the GPU process. (bug 1294350 part 3, r=froydnj) 2016-08-22 22:57:36 -07:00
Nicholas Nethercote
880da46719 Bug 1296164 (part 3) - Use [must_use] on more nsIFile things. r=froydnj.
These ones don't require any extra checks to be added.

--HG--
extra : rebase_source : d13aa304f930d5250462813d32c67747f4ce4b30
2016-08-18 16:43:28 +10:00
Nicholas Nethercote
8f84642d03 Bug 1296164 (part 2) - Use [must_use] on nsIFile.open{NSPR,ANSI}FileDesc(). r=froydnj.
The patch also changes RemoteOpenFileChild::OpenNSPRFileDesc() so that it
cannot succeed with a null fd, so that checking just the return value is
sufficient.

--HG--
extra : rebase_source : cc40bbcf2a9991edc9d3da3fb624d27db50b4996
2016-08-18 15:27:16 +10:00
Nicholas Nethercote
04be8d005a Bug 1296164 (part 1) - Use [must_use] on nsIFile.{create,createUnique}. r=froydnj.
And fix numerous missing checks that this change identifies.

--HG--
extra : rebase_source : 97b0a6e8f9375c937dadb59c1110bb54b7633134
2016-08-18 13:30:12 +10:00
Xidorn Quan
fab96c1410 Bug 1291707 part 2 - Add GetAndRemove to nsDataHashtable. r=froydnj
MozReview-Commit-ID: 24zlYwsRGsF

--HG--
extra : rebase_source : 904c62cd779133666904d3167cb7e7c31f95a412
extra : source : 6c1df15aad607e70547b51011bd352d8a8bf826d
2016-08-23 10:31:26 +10:00
Kan-Ru Chen
b4cf4bec61 Bug 1264642 - Part 6. Mark JSStructuredCloneData as MOZ_NON_MEMMOVABLE and add specializations in nsTArray.h. r=froydnj
MozReview-Commit-ID: HltgzBnxMsn
2016-08-23 00:40:47 +08:00
Nathan Froyd
e255fd3842 Bug 1262826 - specialize nsTHashtable<nsPtrHashKey<T>> to share a common implementation; r=erahm
We have a number of nsTHashtable<nsPtrHashKey<T>> instantiations, mostly
from IPDL-generated code.  There's no reason in principle that all of
these instantiations couldn't share code, since they're all storing POD
entries of the same size.  Let's specialize nsTHashtable for such types,
providing a thin layer over a hashtable that stores void pointers.  This
change saves about 90K of space (!) on x86-64 Linux.
2016-08-22 18:45:47 -04:00
Nathan Froyd
41ba39b3b0 Bug 1295197 - use non-null-checked operator new in xpcom/; r=erahm
The standard placement new function is declared to not throw, which
means that, per spec, a null check on its result is required. There are
a number of places throughout xpcom/ where we know that we are passing
non-null pointers to placement new (and receiving them as a return
value), and we are therefore doing useless work performing these null
checks.

Therefore, we should be using an operator new overload that doesn't
require the null check. MFBT has just such an overload, so use that.
2016-08-22 18:40:10 -04:00
Andi-Bogdan Postelnicu
390ab815ab Bug 1282408 - add ignore initialization check flag for mAnyMarked in FixWeakMappingGrayBitsTracer. r=froydnj
MozReview-Commit-ID: 4DrIUUf4tuk
2016-08-24 10:58:37 +03:00
Kan-Ru Chen
b6d880aca1 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES


--HG--
rename : mfbt/unused.h => mfbt/Unused.h
2016-08-24 14:47:04 +08:00
Andrew McCreight
110539616e Bug 1296726, part 2 - Remove unused methods from nsIInterfaceInfoManager. r=froydnj
MozReview-Commit-ID: 2Znf8iN3pU4
2016-08-23 06:05:01 -07:00
Andrew McCreight
fc6173089e Bug 1296726, part 1 - Remove trailing whitespace from xpcom/reflect/xptinfo. r=froydnj
MozReview-Commit-ID: ewdP6XFfmr
2016-08-23 06:05:01 -07:00
Andrew McCreight
427e9d567c Bug 1297176 - Mark nsIInterfaceInfo{,Manager} builtinclass. r=froydnj
I think technically you could implement one of these in JS now, which
might prevent me from reasonably asserting that these can never GC. I
doubt anybody would ever do that, so it should be okay. There are zero
references to these two interfaces in all of addon DXR, and none in
Firefox JS.

MozReview-Commit-ID: 3AkW0AkqmNx
2016-08-23 06:05:00 -07:00
Andrew McCreight
edbb47a7d7 Bug 1288870, part 1 - Add NS_INLINE_DECL_REFCOUNTING_WITH_DESTROY. r=froydnj
This is the same basic idea as NS_IMPL_RELEASE_WITH_DESTROY. I need
this because I am making XPCNativeInterface refcounted, and it uses
some weird placement new stuff requiring a special function to
deallocate the object. (It does this to store an array of arbitrary
length inline, presumably for some sort of time or space reason.)

MozReview-Commit-ID: 5I7BgY6YlLl
2016-08-23 05:59:56 -07:00
Nicholas Nethercote
91655900fc Bug 1295825 (part 3) - Use [must_use] and MOZ_MUST_USE in nsIGZFileWriter.idl. r=froydnj.
--HG--
extra : rebase_source : 7af7a00edf68fe8964c3cade994819288163d198
2016-08-17 17:09:45 +10:00
Nicholas Nethercote
f68e1caceb Bug 1295825 (part 2) - Use [must_use] and MOZ_MUST_USE in nsIPipe.idl. r=froydnj.
The patch also makes GetInputStream() fail if the pipe isn't initialized, just
like GetOutputStream().

--HG--
extra : rebase_source : 7391b331ffe25e0ac7ebc755f7da313dc7b5517d
2016-08-17 16:52:48 +10:00
Nicholas Nethercote
0b2a9374e3 Bug 1295825 (part 1) - Add a [must_use] attribute to XPIDL. r=froydnj.
For XPIDL methods, this causes MOZ_MUST_USE to be prepended to the generated
C++ function declaration.

For XPIDL attributes, this causes MOZ_MUST_USE to be prepended to the generated
C++ getter declaration and (if present) setter declaration.

--HG--
extra : rebase_source : e0b2c43235bfbc02db609076e82ca6325e4b0bff
2016-08-17 11:08:14 +10:00
Sebastian Hengst
7422ce2634 Backed out changeset 31b56ae647c8 (bug 1110928) 2016-08-21 12:27:47 +02:00
Emilio Cobos Álvarez
00ab304ee2 Bug 1292618: Add Gecko_ClearPODTArray to clear arrays of types without destructors. r=heycam
MozReview-Commit-ID: 3RRvrXn6ZTD
Signed-off-by: Emilio Cobos Álvarez <ecoal95@gmail.com>
2016-08-19 20:24:24 -07:00
Wes Kocher
02f300c352 Backed out 4 changesets (bug 1292618) because it was making merging things difficult a=backout
Backed out changeset 14733a383b4c (bug 1292618)
Backed out changeset 17dfe8bc5f76 (bug 1292618)
Backed out changeset d04597bd1109 (bug 1292618)
Backed out changeset 30f7696fea2d (bug 1292618)
2016-08-19 18:37:09 -07:00
Emilio Cobos Álvarez
c043a5d5c5 Bug 1292618: Add Gecko_ClearPODTArray to clear arrays of types without destructors. r=heycam
MozReview-Commit-ID: 3RRvrXn6ZTD
Signed-off-by: Emilio Cobos Álvarez <ecoal95@gmail.com>
2016-08-19 18:26:35 -07:00
Andrew McCreight
a0ddf20ce7 Bug 1110928, part 4 - Try to pass a relevant zone to PokeGC. r=smaug
This means the browser will do less full GCs.

MozReview-Commit-ID: BXf4GGhmbMx
2016-08-19 15:26:56 -07:00
Ryan VanderMeulen
01c4e8cc1b Merge inbound to m-c. a=merge 2016-08-19 09:52:53 -04:00
Phil Ringnalda
b4f23026ee Backed out 5 changesets (bug 1292618) for !mImageTracked assertion failures
CLOSED TREE

Backed out changeset 1d767147e160 (bug 1292618)
Backed out changeset e6034e58efe4 (bug 1292618)
Backed out changeset 928dd363efa0 (bug 1292618)
Backed out changeset 8e274c66ae7f (bug 1292618)
Backed out changeset 6c347701d343 (bug 1292618)
2016-08-19 00:23:42 -07:00
Emilio Cobos Álvarez
242a6e6bcf Bug 1292618: Add Gecko_ClearPODTArray to clear arrays of types without destructors. r=heycam
MozReview-Commit-ID: 3RRvrXn6ZTD
2016-08-18 22:16:16 -07:00
Wes Kocher
55897634c1 Backed out 3 changesets (bug 1288870) for hazards a=backout
Backed out changeset 83bbd356da97 (bug 1288870)
Backed out changeset 4f0ab1a0d8dd (bug 1288870)
Backed out changeset 8d71aba5c1e7 (bug 1288870)
2016-08-18 16:50:13 -07:00
Andrew McCreight
f68a2b0443 Bug 1288870, part 1 - Add NS_INLINE_DECL_REFCOUNTING_WITH_DESTROY. r=froydnj
This is the same basic idea as NS_IMPL_RELEASE_WITH_DESTROY. I need
this because I am making XPCNativeInterface refcounted, and it uses
some weird placement new stuff requiring a special function to
deallocate the object. (It does this to store an array of arbitrary
length inline, presumably for some sort of time or space reason.)

MozReview-Commit-ID: 5I7BgY6YlLl
2016-08-18 15:20:48 -07:00
Emilio Cobos Álvarez
11d1b4e283 Bug 1295818: Templatize nsTArray::RemoveElementsBy to avoid a spurious allocation. r=froydnj
mozilla::function involves an allocation of the FunctionImpl type, that we can
avoid rather easily in this case.

This commit is completely optional, I guess, though the code we're using
RemoveElementsBy with the previous patch is sort of hot.

MozReview-Commit-ID: 2LoQs4cB28X
2016-08-18 10:02:39 -07:00
Sylvestre Ledru
4a4e53fe19 Bug 1296231 - Fix some missing "Missing varargs cleanup" and "Resource leaks" r=froydnj
MozReview-Commit-ID: AT1L351PjF6

--HG--
extra : rebase_source : f9c0cb1a8b478c2ad5a52f679eb5feb603e85d2e
2016-08-18 10:46:05 +02:00
Andi-Bogdan Postelnicu
f2739cfe8d Bug 1296286 - preventfalse positive resource leak trigger in Base64DecodeHelper. r=froydnj
MozReview-Commit-ID: 6E8ftV093ep

--HG--
extra : rebase_source : 10e39c2be69471c2e4c9df14cfc067c8e78c227f
2016-08-18 16:40:04 +03:00
Wes Kocher
c84ec3b3f3 Merge m-c to inbound, a=merge 2016-08-16 22:06:58 -07:00
Wes Kocher
48b8d407c8 Merge inbound to central, a=merge
a=release to get around the webidl hook for a comment-only change

--HG--
extra : amend_source : f7e57101e1a25d3cf3536a256898ec2a21c54b38
2016-08-16 17:05:30 -07:00
Wes Kocher
f378fa54b1 Backed out changeset f8d33a975228 (bug 1295197) for being a possible cause of crashtest assertions CLOSED TREE 2016-08-16 11:22:23 -07:00
Rob Wu
a342c4d816 Bug 1287626 - Add globally unique nsIXULAppinfo.uniqueProcessID r=billm
MozReview-Commit-ID: 3bcW1CjTpjT

--HG--
extra : rebase_source : fdde98684957139e412c5f664ebeab655fee883d
2016-08-10 16:07:40 -07:00
Nathan Froyd
da3e07b555 Bug 1295197 - use non-null-checked operator new in xpcom/; r=erahm
The standard placement new function is declared to not throw, which
means that, per spec, a null check on its result is required.  There are
a number of places throughout xpcom/ where we know that we are passing
non-null pointers to placement new (and receiving them as a return
value), and we are therefore doing useless work performing these null
checks.

Therefore, we should be using an operator new overload that doesn't
require the null check.  MFBT has just such an overload, so use that.
2016-08-16 17:05:39 -04:00
Towkir Ahmed
63867da04a Bug 1284887 - Replaced references to mxr.mozilla.org in the codebase with dxr.mozilla.org r=dolske
a=release to get around a hook that's catching these comment-only idl changes

--HG--
extra : rebase_source : a7353680777fd2eeea24c9993f9937bbbcfb9e4f
2016-08-15 17:28:05 -07:00
Igor
175543fda8 Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
Igor
a57972337d Bug 1293384 - Part 1: Rename snprintf_literal to SprintfLiteral. r=froydnj 2016-08-14 23:44:00 -07:00
Nicholas Nethercote
e0229c761e Bug 1295053 (part 5) - Remove an unnecessary use of NS_CALLBACK in ClassInfoData. r=froydnj.
--HG--
extra : rebase_source : 6b14b91e8cd4c056e40148064b396a55c6f451a3
2016-08-16 07:56:26 +10:00
Nicholas Nethercote
3873d0c8f6 Bug 1295053 (part 4) - Don't use NS_METHOD for remaining xpcom functions. r=froydnj.
These don't need __stdcall on Win32.

--HG--
extra : rebase_source : 19e4bf0d67b7fe25f53c0cff24471ef23d26dcf0
2016-08-15 14:49:26 +10:00
Nicholas Nethercote
44523bfcdc Bug 1295053 (part 3) - Don't use NS_METHOD for xpcom IO functions. r=froydnj.
These don't need __stdcall on Win32.

--HG--
extra : rebase_source : 19959269036f9f0e8f1ca4ee6b82f0d5e2a93a64
2016-08-15 14:30:32 +10:00
Nicholas Nethercote
b048991fcb Bug 1295053 (part 2) - Don't use NS_METHOD for nsCategoryManager functions. r=froydnj.
These don't need __stdcall on Win32.

--HG--
extra : rebase_source : 3186eb121878ea97420afa500224f38493275793
2016-08-15 14:30:14 +10:00
Nicholas Nethercote
060123c88a Bug 1295053 (part 1) - Don't use NS_METHOD for xpcom thread utility functions. r=froydnj.
These don't need __stdcall on Win32.

--HG--
extra : rebase_source : 9af47c64571a2c7459f95c46e737c5ef50d47909
2016-08-15 14:29:43 +10:00
Nathan Froyd
114e020c41 Bug 1294809 - remove cppunittest TestPipe; r=erahm
We have TestPipes gtests that does the same thing (see the TestPipe2
function and callers) as this test.
2016-08-15 21:31:04 -04:00
Michael Layzell
e1fc3b1773 Bug 1159244 - Add release mode bounds checking with custom annotations to nsTArray, r=froydnj
MozReview-Commit-ID: Ljx9PwBCyTT
2016-08-15 13:29:45 -04:00
Nicholas Nethercote
3b0485fcdb Bug 1294645 - Don't use NS_CALLBACK for callbacks in nsI{Input,Output,UnicharInput},Stream.idl. r=froydnj.
Slightly less than half (93 / 210) of the NS_METHOD instances in the codebase
are because of the use of NS_CALLBACK in
nsI{Input,Output,UnicharInput},Stream.idl. The use of __stdcall on Win32 isn't
important for these callbacks because they are only used as arguments to
[noscript] methods.

This patch converts them to vanilla |nsresult| functions. It increases the size
of xul.dll by about ~600 bytes, which is about 0.001%.

--HG--
extra : rebase_source : c15d85298e0975fd030cd8f8f8e54501f453959b
2016-08-12 17:36:22 +10:00
Wes Kocher
b1e2d2ad52 Merge m-c to inbound, a=merge 2016-08-12 16:29:24 -07:00
Wes Kocher
e9097643d5 Merge inbound to central, a=merge 2016-08-12 13:44:29 -07:00
Michael Layzell
b0e960faba Bug 1293001 - Part 4: Add test for xpidl parser modifications, r=froydnj
MozReview-Commit-ID: JTtcwlVH3HN
2016-08-11 15:49:42 -04:00
Michael Layzell
ee7579d8b5 Bug 1293001 - Part 3: Prevent virtual method overloading in xpidl with the parser, r=froydnj
MozReview-Commit-ID: 7nFq3wJtUoi
2016-08-11 15:49:41 -04:00
Jan de Mooij
5a6befce76 Bug 1292892 part 2 - Some RootingContext cleanup. r=bz,terrence 2016-08-11 14:39:22 +02:00
Jan de Mooij
0ad12515f4 Bug 1292892 part 1 - Stop using JSRuntime outside SpiderMonkey. r=bz,terrence,fitzgen,kanru 2016-08-11 14:39:22 +02:00
Nicholas Nethercote
736c7b1407 Bug 1291970 (part 2) - Tweak nsCategoryManager memory reporter handling. r=erahm.
This patch adds an assertion that makes sure that the nsCategoryManager is
destroyed after the nsMemoryReporterManager, because bad things would happen
otherwise.

Also, nsCategoryManager uses manual memory management (it's AddRef/Release are
hardwired to always return 2 and 1 respectively) so it doesn't matter if we
register it as a strong or weak memory reporter. But it's more common to use
RegisterWeakMemoryReporter when the argument is |this|, so this patch does
that.

--HG--
extra : rebase_source : 4ca33404d4c6f2b271e1ad008ea1a9a79f3ef666
2016-08-11 09:29:44 +10:00
Nicholas Nethercote
9d5a878581 Bug 1291970 (part 1) - Use MOZ_MUST_USE in nsMemoryReporterManager. r=erahm.
--HG--
extra : rebase_source : 11223e1aadb08c2ce71f783d68b37c135fe4bee5
2016-08-04 12:14:14 +10:00
Nicholas Nethercote
8f51d02c97 Bug 1293117 (part 5) - Change many NS_METHOD occurrences to NS_IMETHOD. r=froydnj.
This patch makes the following changes on many in-class methods.

- NS_METHOD F() override;      --> NS_IMETHOD F() override;
- NS_METHOD F() override {...} --> NS_IMETHOD F() override {...}
- NS_METHOD F() final;         --> NS_IMETHOD F() final;
- NS_METHOD F() final {...}    --> NS_IMETHOD F() final {...}

Using NS_IMETHOD is the preferred way of marking in-class virtual methods.
Although these transformations add an explicit |virtual|, they are safe --
there's an implicit |virtual| anyway because |override| and |final| only work
with virtual methods.

--HG--
extra : rebase_source : 3010fade82a170eab7f13d81bf61b02cd693f3cf
2016-08-08 10:54:50 +10:00
Nicholas Nethercote
bab6d17ebf Bug 1293117 (part 4) - Change many NS_IMETHODIMP occurrences to NS_IMETHOD. r=froydnj.
This patch makes the following changes on many in-class methods.

- NS_IMETHODIMP F() override;      --> NS_IMETHOD F() override;
- NS_IMETHODIMP F() override {...} --> NS_IMETHOD F() override {...}
- NS_IMETHODIMP F() final;         --> NS_IMETHOD F() final;
- NS_IMETHODIMP F() final {...}    --> NS_IMETHOD F() final {...}

Using NS_IMETHOD is the preferred way of marking in-class virtual methods.
Although these transformations add an explicit |virtual|, they are safe --
there's an implicit |virtual| anyway because |override| and |final| only work
with virtual methods.

--HG--
extra : rebase_source : 386ee4e4ea2ecd8d5001efabc3ac87b4d6c0659f
2016-08-08 10:54:47 +10:00
Nicholas Nethercote
e2b74f8d16 Bug 1293117 (part 1) - Add comment explaining how NS_IMETHOD, NS_IMETHODIMP and NS_METHOD should be used. r=froydnj.
--HG--
extra : rebase_source : 26a26409b3f0ab7adf872af6db003138837b7414
2016-08-08 10:40:42 +10:00
Eric Rahm
dad6ca00c0 Bug 1265262 - Check for null root branch when registering pref watcher. r=froydnj 2016-08-10 12:48:55 -07:00
Kaku Kuo
1d454947bd Bug 1291997 - add media related dom exceptions; r=bz
MozReview-Commit-ID: Def98wbKxGI

--HG--
extra : transplant_source : 6%F3%9F%F7%CF%CD%28G%CB%93I%3E%F8%12%C9km%95%E8f
2016-08-04 11:46:45 +08:00
Shih-Chiang Chien
a8326d97ea Bug 1288600 - reject promise with NotFoundError while no device, and NotAllowedError while canceled by user. r=smaug.
MozReview-Commit-ID: ArQHhdIpQjg
2016-08-09 09:58:14 +08:00
Jim Mathies
118ac04293 Bug 1286306 - Add an app info property exposing the state of the Windows dll blocklist, and test the value during browser test runs. r=bsmedberg
MozReview-Commit-ID: H7206wTh8YM
2016-07-27 15:20:58 -05:00
Carsten "Tomcat" Book
553a2da922 merge mozilla-inbound to mozilla-central a=merge 2016-08-10 15:54:26 +02:00
Nicholas Nethercote
e7f10a07fd Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.

As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.

--HG--
extra : rebase_source : 815d0018b0b13329bb5698c410f500dddcc3ee12
2016-08-08 12:18:10 +10:00
Nicholas Nethercote
9dc11c1da2 Bug 1293603 (part 1) - Add |override| to CollectReports() declarations missing it. r=erahm.
--HG--
extra : rebase_source : 7ae41d24bacf4de4ca6193ad52517343806dbb2d
2016-08-08 11:04:11 +10:00
Nicholas Nethercote
a68db0d1df Bug 1293541 - Clean up NS_OBJC_*_TRY_* macros. r=mstange.
NS_OBJC_{BEGIN,END}_TRY_LOGONLY_BLOCK{,RETURN} are identical to
NS_OBJC_{BEGIN,END}_TRY_ABORT_BLOCK{,RETURN}. This patch removes the LOGONLY
versions in favour of the ABORT versions.

--HG--
extra : rebase_source : 4537de8986b87784d2a80ead24999310adbdece8
2016-08-09 14:27:59 +10:00
Mike Shal
549dd4ff30 Bug 1293784 - Only recurse into xpcom/idl-parser/xpidl once; r=gps
MozReview-Commit-ID: 823OM551BH6

--HG--
extra : rebase_source : 0770b3156d9abd60cb3520eaee87f1a3211a8351
2016-08-09 16:58:18 -04:00
Nicholas Nethercote
c10a40d45c Bug 1275309 (part 1) - Add a variant of Base64Decode(). r=erahm.
This mirrors the changes made to encoding in bug 1273712.

--HG--
extra : rebase_source : 9902fa6aa7460ad04969b69f679e438e4850944d
2016-08-04 11:49:46 +10:00
Yura Zenevich
7d6abb5975 Bug 527003 - separating XPCOM parts from nsAccessibilityService. Removing a11y service in favour of using nsAccessibilityService directly. Adding support for a11y service shutdown. r=surkov
MozReview-Commit-ID: KKeywNi3fQb
2016-08-08 20:51:39 -04:00
Mike Shal
66abb74f81 Bug 1293387 - fix header.py direct invocation; r=chmanchester
MozReview-Commit-ID: FtJpzOZ4Is6

--HG--
extra : rebase_source : b428be80fae70be2bfc6d3bf96775e3e859e9ef1
2016-07-26 14:15:06 -04:00
Nathan Froyd
96fd6a0aed Bug 1254779 - add tests to verify allocation function hooking; r=glandium 2016-08-12 18:55:07 -04:00
Chris Manchester
b0b84a1928 Bug 1240134 - Incorporate the interfaces.xpt from downloaded artifacts instead of building XPIDL during an artifact build. r=glandium
MozReview-Commit-ID: 8oEyS1xLOwV
2016-08-17 15:02:31 -07:00
Andrew McCreight
18b7a1fc2f Bug 1293666 - Add initializer_list ctor to AutoTArray. r=froydnj
MozReview-Commit-ID: 8ORBttWN2Rj

--HG--
extra : rebase_source : 9ad6ae8aff9cbc81c773297d0bb2f7478fb3516e
2016-08-09 07:21:26 -07:00
Carsten "Tomcat" Book
389a3e0817 merge mozilla-inbound to mozilla-central a=merge
--HG--
rename : mobile/android/base/java/org/mozilla/gecko/GeckoAppShell.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/GeckoAppShell.java
rename : mobile/android/base/java/org/mozilla/gecko/gfx/GeckoLayerClient.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/gfx/GeckoLayerClient.java
rename : mobile/android/base/java/org/mozilla/gecko/gfx/LayerRenderer.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/gfx/LayerRenderer.java
rename : mobile/android/base/java/org/mozilla/gecko/gfx/PanningPerfAPI.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/gfx/PanningPerfAPI.java
2016-08-04 15:55:50 +02:00
Alexandre Lissy
0af5b943b6 Bug 1284674 - Remove NUWA r=cyu
MozReview-Commit-ID: GyMRNzOBKw6

--HG--
extra : rebase_source : 293af1cd55f2035ce6a99f4ebf144059c32a2b8f
2016-08-02 14:54:00 +02:00
Igor
4878f6bf37 Bug 1289890 - Change nsCOMArray::ReplaceObjectAt() return type from "bool" to "void", since it always succeeds. r=froyndnj 2016-08-02 16:20:00 +02:00
Chris Peterson
6ae2ecbc02 Backed out changeset 3b1cf7c28eb7 (bug 1290646) for possibly breaking OS X debug mochitests. 2016-08-03 01:11:06 -07:00
Chris Peterson
1eccabf8d3 Bug 1290646 - Remove VS2012 crash workaround in nsTArray. r=jimm 2016-07-28 11:51:25 -07:00
Cameron McCormack
e6a3498cde Bug 1288038 - Make fallible nsBaseHashtable::Put use fallible nsTHashtable::PutEntry. r=froydnj r=sfink
MozReview-Commit-ID: 8N32oU4V5zh
2016-08-03 09:18:35 +08:00
Carsten "Tomcat" Book
bd81ddd0b0 merge mozilla-inbound to mozilla-central a=merge 2016-08-02 17:09:31 +02:00
JW Wang
50617e1091 Bug 1290338. Part 2 - don't call back to owner functions if the watcher is destroyed. r=bholley
MozReview-Commit-ID: FQkJYtLTBNQ

--HG--
extra : rebase_source : c947ed2de25426815f5260be9b550dfa99f88950
2016-07-29 11:30:16 +08:00