Commit Graph

19257 Commits

Author SHA1 Message Date
Jon Coppeard
8b73371be0 Bug 1407593 - Report embedding leaks of JS GC things r=sfink,sfink?
Patch to report JS GC things that are live at shutdown as leaks by calling MOZ_LOG_CTOR for them. The JS engine now clears any remaining roots to prevent dangling pointers to freed memory after shutdown. I made XPCJSRuntime::Shutdown keep the weak pointer update callbacks as sometimes these tables have entries remaining at shutdown (if there are leaks) and we need the callbacks to update them.

This is looking more green on try now.

Differential Revision: https://phabricator.services.mozilla.com/D40449

--HG--
extra : moz-landing-system : lando
2019-08-13 08:31:49 +00:00
Emilio Cobos Álvarez
c3ee3ac3a8 Bug 1418624 - Allow mozilla::Result to be moved, make unwrap{,Err}() move, and add inspect() APIs that return references. r=froydnj
Also adjust some of the callers that were either calling unwrap() repeatedly on
the same result, or were doing silly copies, to use inspect().

We could try to use stuff like:

https://clang.llvm.org/docs/AttributeReference.html#consumed-annotation-checking

Differential Revision: https://phabricator.services.mozilla.com/D41425

--HG--
extra : moz-landing-system : lando
2019-08-13 08:26:18 +00:00
Gabriele Svelto
beb62c4c31 Bug 1282776 - Finalize crash reports for child process crashes happening too early r=froydnj
This changes the way crash reports for child processes happening too early
during the child process' startup. Before bug 1547698 we wrote a partial
.extra file with those crashes that lacked the process type. The user would
not be notified of those crashes until she restarted Firefox and even when
submitted those crashes would be erroneously labeled as browser crashes.

After bug 1547698 we stopped writing .extra files entirely for those crashes
which left orphaned .dmp files among the pending crash reports.

This patch does three things to improve the situation:

* It writes a partial .extra file so that the crashes are detected at the next
  startup. So the user is still not notified directly of these crashes but she
  can report them later.
* It adds the process type to the .extra file so that the crash reporters are
  labelled correctly.
* It fixes a leak in the `pidToMinidump` hash-map. Since the crashes were
  not finalized the `ChildProcessData` strucutre associated with them would
  never be fred.

Differential Revision: https://phabricator.services.mozilla.com/D40810

--HG--
extra : moz-landing-system : lando
2019-08-09 14:23:19 +00:00
Gabriele Svelto
53d4ac9807 Bug 1572565 - Make the remote sandbox broker process' telemetry string consistent r=jld
Differential Revision: https://phabricator.services.mozilla.com/D41291

--HG--
extra : moz-landing-system : lando
2019-08-09 00:03:33 +00:00
Brendan Dahl
b474db77c6 Bug 1551344 - Part 1: Remove XULDocument code. r=smaug,Jamie
All .xul files have been loading as HTMLDocuments for a few weeks now, so
it should be safe to remove the XULDocument implementation.

Differential Revision: https://phabricator.services.mozilla.com/D41238

--HG--
extra : moz-landing-system : lando
2019-08-09 19:57:50 +00:00
Aaron Klotz
fb977a3526 Bug 1571875: Part 2 - Change over all existing static local uses of DynamicallyLinkedFunctionPtr to use StaticDynamicallyLinkedFunctionPtr instead; r=mhowell
Depends on D40885

Differential Revision: https://phabricator.services.mozilla.com/D40886

--HG--
extra : moz-landing-system : lando
2019-08-07 15:58:09 +00:00
Aaron Klotz
1fc3efff69 Bug 1568361: Use StaticLocalAutoPtr for BackgroundMTAData; r=Jamie
The new StaticLocalAutoPtr smart pointer has a trivial destructor, so we will
either properly clean up this data or leak it on process shutdown. Either way,
we will not destroy it in a way that the underlying type does not support.

Differential Revision: https://phabricator.services.mozilla.com/D40842

--HG--
extra : moz-landing-system : lando
2019-08-07 01:48:31 +00:00
Andreea Pavel
8f56db01f7 Backed out changeset d0aae34d9b95 (bug 1529068) for failing form-redirected-blocked.sub.html on a CLOSED TREE
--HG--
extra : rebase_source : 4d7a73e1f40de001031c61fba240c57961a902d8
2019-08-07 01:39:29 +03:00
Cameron McCormack
d075470483 Bug 1053379 - Simplify CodeAddressService so non-DMD users can rely on defaults. r=njn
None of the StringTable implementations were freeing their strdup'd
strings, either.

Differential Revision: https://phabricator.services.mozilla.com/D40757

--HG--
extra : moz-landing-system : lando
2019-08-06 21:58:12 +00:00
Benjamin
455d7a7789 Bug 1529068 - navigate-to r=ckerschb,mccr8
Implementation of the navigate-to CSP directive as defined in CSP Level 3, https://www.w3.org/TR/CSP3/#directive-navigate-to

Differential Revision: https://phabricator.services.mozilla.com/D37139

--HG--
extra : moz-landing-system : lando
2019-08-06 18:27:45 +00:00
Bobby Holley
c14858c637 Bug 1571092 - Mark various MozPromise-returning methods MOZ_MUST_USE. r=jld
Differential Revision: https://phabricator.services.mozilla.com/D40528

--HG--
extra : moz-landing-system : lando
2019-08-05 20:10:58 +00:00
Tom Ritter
2d0fd702ee Bug 1570563 - Sync in xptcstubs code from x86_64 to x86_64_gnu r=froydnj
This contains two changes. One is to zero out the top 56 bits for a bool
conversion so we can pass bools correctly from cpp -> js. This was also
needed in Bug 821628, 1513725

The other change copies the fix in Bug 689288 where we cast a float value
as a double.

Differential Revision: https://phabricator.services.mozilla.com/D40686

--HG--
extra : moz-landing-system : lando
2019-08-05 20:00:45 +00:00
Aaron Klotz
a2b73b8abc Bug 1570395: Add StaticLocalAutoPtr and StaticLocalRefPtr to XPCOM; r=froydnj
This patch adds smart pointers to be used for initializing objects as C++11
"magic statics" -- that is, they are able to take advantage of C++11's
guarantee of thread safety during initialization by atomically constructing
both the smart pointer itself as well as the object being pointed to.

Unlike Static{Auto,Ref}Ptr, they have non-trivial constructors, though they
must still have trivial destructors to prevent emission of atexit calls.

The new classes use the new `MOZ_STATIC_LOCAL_CLASS` annotation which ensures
their instantiations are static locals and prevents non-trivial destructors.

Differential Revision: https://phabricator.services.mozilla.com/D40092

--HG--
rename : xpcom/base/StaticPtr.h => xpcom/base/StaticLocalPtr.h
extra : moz-landing-system : lando
2019-08-02 17:26:37 +00:00
mandy cheang
dcf8e881eb Bug 1553558 - collect countryCode in system info off the main thread. r=mconley,Standard8
Differential Revision: https://phabricator.services.mozilla.com/D39343

--HG--
extra : moz-landing-system : lando
2019-08-02 12:55:38 +00:00
Jorg K
864c351bc8 Bug 1570719 - Skip more elements in spellcheck for MailNews. r=masayuki 2019-08-02 10:49:17 +02:00
Masayuki Nakano
23a22c597a Bug 1569902 - part 2: Stop using attribute to consider whether a <br> element is a special node for empty last line or not r=m_kato,smaug
Editor creates a `<br>` element to end of a block if last line
of the block is empty because caret should be placed as there is an empty
line.  Such special `<br>` element has `type` attribute whose value is "_moz".
However, adding/removing the attribute is expensive and such hacky attribute
shouldn't be referred nor changed by web apps.

Therefore, this patch makes `HTMLBRElement` take another specific flag whether
it's a special node for empty last line.  For making the meaning clearer,
this patch calls the such `<br>` elements as "padding `<br>` element for
empty last line" insead of "moz-br".  So, this patch also includes a lot of
renaming methods and variables, and modifying related comments.

Note that with this change, `IMEContentObserver` counts the padding `<br>`
element in `<textarea>` because it's inserted before setting the new flag
and setting the flag does not cause DOM tree mutation.  This issue will be
fixed by the following patches.

Differential Revision: https://phabricator.services.mozilla.com/D39858

--HG--
extra : moz-landing-system : lando
2019-08-02 05:45:18 +00:00
Masayuki Nakano
765e91b497 Bug 1569902 - part 1: Stop using attribute to consider whether a <br> element is an editor bogus node or not r=m_kato,smaug
Editor creates a `<br>` element when it's root element is empty.
Then, it's stored by `TextEditRules::mBogusNode` and used for checking
whether the editor is empty quickly.  However, this `<br>` element has
`mozeditorbogusnode` attribute whose value is `true`.  However, adding or
removing the attribute is not cheap and web apps can refer such illegal
attribute.

Therefore, this patch makes `HTMLBRElement` take a specific flag whether
it's a bogus node or not.  However, this means that this hacky thing will be
exposed outside editor module.  For making what is the bogus node clearer,
this patch calls the such `<br>` elements as "padding `<br>` element for
empty editor".  So, this patch also includes a lot of renaming methods and
variables, and modifying related comments.

Differential Revision: https://phabricator.services.mozilla.com/D39857

--HG--
extra : moz-landing-system : lando
2019-08-02 05:44:40 +00:00
Razvan Maries
518b15a876 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-08-02 01:52:58 +03:00
Nathan Froyd
db237d1092 Bug 1298602 - split condition in TestExpirationTracker; r=KrisWright
This condition is intermittently failing, but it's hard to tell from the
failure which part of the condition is failing.  Split the condition
apart so ideally we'll get some better error messages.  While we're
doing that, use a more explicit `EXPECT_LT` for the first half of the
condition for even better error messages.

Differential Revision: https://phabricator.services.mozilla.com/D40051

--HG--
extra : moz-landing-system : lando
2019-07-31 18:16:35 +00:00
Honza Bambas
2da6575574 Bug 1561912, r=michal
Differential Revision: https://phabricator.services.mozilla.com/D37297

--HG--
extra : moz-landing-system : lando
2019-07-26 22:58:39 +00:00
Dylan Roeh
1e945a8dd6 Bug 1553603 - Support "capture" attribute in Gecko and expose in GV. r=geckoview-reviewers,smaug,snorp,agi
Differential Revision: https://phabricator.services.mozilla.com/D38746

--HG--
extra : moz-landing-system : lando
2019-07-30 18:13:05 +00:00
Dave Townsend
b2dea19e2d Bug 1570019: Verify that nsContentUtils is initialized before calling into it. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D39895

--HG--
extra : moz-landing-system : lando
2019-07-30 15:51:17 +00:00
Christoph Kerschbaumer
ad40847192 Bug 1567877: Apply Meta CSP to about:devtools-toolbox. r=jdescottes,Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D39328

--HG--
extra : moz-landing-system : lando
2019-07-30 07:14:09 +00:00
Dave Townsend
9d647b266c Bug 1569682: Fix GetSerialNumber to not destroy the just added serial number record. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D39777

--HG--
extra : moz-landing-system : lando
2019-07-29 20:52:04 +00:00
Olli Pettay
c7ee50989c Bug 1565930, try to make Promise less error prone to compartment mismatches, r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D38762

--HG--
extra : moz-landing-system : lando
2019-07-29 14:43:54 +00:00
Kris Maglione
85c7f7187f Bug 1566186: Part 1 - Remove DocShell support for isolated mozbrowsers. r=nika
This functionality is currently unused, and blocks work needed to support
Fission.

Differential Revision: https://phabricator.services.mozilla.com/D39542

--HG--
extra : rebase_source : 1d8fdea73d48c714112d13844f5110f7f1892dda
2019-07-16 16:40:19 -07:00
Yoshi Cheng-Hao Huang
e17d60cbf4 Bug 1551810 - Part 1: return bool in CallbackTracer methods. r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D38980

--HG--
extra : moz-landing-system : lando
2019-07-26 08:59:38 +00:00
Nicholas Nethercote
18fae65f38 Bug 1563139 - Remove StaticPrefs.h. r=glandium
This requires replacing inclusions of it with inclusions of more specific prefs
files.

The exception is that StaticPrefsAll.h, which is equivalent to StaticPrefs.h,
and is used in `Codegen.py` because doing something smarter is tricky and
suitable for a follow-up. As a result, any change to StaticPrefList.yaml will
still trigger recompilation of all the generated DOM bindings files, but that's
still a big improvement over trigger recompilation of every file that uses
static prefs.

Most of the changes in this commit are very boring. The only changes that are
not boring are modules/libpref/*, Codegen.py, and ServoBindings.toml.

Differential Revision: https://phabricator.services.mozilla.com/D39138

--HG--
extra : moz-landing-system : lando
2019-07-26 01:10:23 +00:00
Kirk Steuber
0af11985df Bug 1551913 - Fix issues setting update directory permissions r=rstrong
This patch addresses both Bug 1551913 and Bug 1552206.

This patches the update directory permission-fixing code.

This also fixes a related bug that I discovered while testing this patch: nsAutoSid doesn't actually work because both PSID and HANDLE are both typedef'ed from void*, so the compiler can't actually tell the difference between them and ends up calling CloseHandle instead of FreeSid. To fix this, I removed nsAutoSid and replaced it with UniqueSidPtr, a UniquePtr type that uses a custom deleter class to free the SID properly.

Differential Revision: https://phabricator.services.mozilla.com/D34941

--HG--
rename : toolkit/mozapps/update/common/win_dirent.cpp => toolkit/mozapps/update/common/updateutils_win.cpp
rename : toolkit/mozapps/update/common/win_dirent.h => toolkit/mozapps/update/common/updateutils_win.h
extra : moz-landing-system : lando
2019-07-24 16:05:46 +00:00
Mike Hommey
2e9a3adec2 Bug 1567739 - Stop using deprecated rust libc integer types in xpidl. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D38942

--HG--
extra : moz-landing-system : lando
2019-07-23 13:42:44 +00:00
Bobby Holley
5d23efb2eb Bug 1566583 - Bridge GeckoResult to MozPromise and return a GeckoResult from GeckoProcessManager::start. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D38436

--HG--
extra : moz-landing-system : lando
2019-07-24 21:10:14 +00:00
Coroiu Cristina
f3386dea34 Backed out 4 changesets (bug 1566583) for apilint and checkstyle failure at geckoview/src/main/java/org/mozilla/gecko/GeckoAppShell.java on a CLOSED TREE
Backed out changeset 3700ef585384 (bug 1566583)
Backed out changeset fbc829be6c4f (bug 1566583)
Backed out changeset 14ea9c84bb0e (bug 1566583)
Backed out changeset 92f3b1bb34a4 (bug 1566583)
2019-07-24 22:59:54 +03:00
Bobby Holley
53719788a1 Bug 1566583 - Bridge GeckoResult to MozPromise and return a GeckoResult from GeckoProcessManager::start. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D38436

--HG--
extra : moz-landing-system : lando
2019-07-24 19:19:40 +00:00
Alexis Beingessner
57498bb3b4 Bug 1547351 - add IsEmpty and fix OrInsert signature for nsBaseHashtable. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D38597

--HG--
extra : moz-landing-system : lando
2019-07-24 14:10:56 +00:00
Petr Sumbera
f3628fdebc Bug 1566814 - nsXPTCStubBase::Stub##n functions shouldn't be build with stack-protector in nxptcstubs_sparc64_openbsd.cpp r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D39148

--HG--
extra : moz-landing-system : lando
2019-07-24 09:54:10 +00:00
Boris Zbarsky
0f70d08ec8 Bug 1566595. Stop using [array] in nsIBinaryOutputStream. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D38387

--HG--
extra : moz-landing-system : lando
2019-07-22 20:27:39 +00:00
Ciure Andrei
98278afa46 Backed out changeset a858e4411532 (bug 1566595) for causing Windows MinGW builds bustages CLOSED TREE 2019-07-22 21:39:08 +03:00
Boris Zbarsky
9c74919340 Bug 1566595. Stop using [array] in nsIBinaryOutputStream. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D38387

--HG--
extra : moz-landing-system : lando
2019-07-22 14:52:04 +00:00
Kristen Wright
5984a7cba7 Bug 1565769 - Give threads an additional 50 ms to finish up in ShutdownWithTimeout tests r=erahm
Gtest jobs on the osx1014 try hardware are taking longer than anticipated to finish up, and ThreadPool.ShutdownWithTimeout tests need to wait an extra 50ms to let all threads finish on time. On the long term, when the underlying issue is fixed thread timeouts will need to be readjusted back to 300ms.

Differential Revision: https://phabricator.services.mozilla.com/D38452

--HG--
extra : moz-landing-system : lando
2019-07-18 17:57:43 +00:00
Kristen Wright
cf865d560a Bug 1513392 - move gathering total memory to before CanRecordReleaseData() bail r=erahm
Moves the trigger to gather total memory up about a hundred lines to the point before we bail on release so that it always triggers.

Differential Revision: https://phabricator.services.mozilla.com/D38249

--HG--
extra : moz-landing-system : lando
2019-07-17 15:23:12 +00:00
Karl Tomlinson
53e03975c9 Bug 1542931 add CycleCollectedJSContext::ReportError() r=baku
to make AutoJSAPI error reporting safe for worklets.

Parameter order matches xpc::ErrorReport::Init().

Depends on D34477

Differential Revision: https://phabricator.services.mozilla.com/D34478

--HG--
extra : moz-landing-system : lando
2019-06-12 19:11:04 +00:00
Olli Pettay
7f18b121db Bug 1566573, Add prefs to control idle time limits, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D38242

--HG--
extra : moz-landing-system : lando
2019-07-17 09:19:44 +00:00
Olli Pettay
5474e37783 Bug 1566459, add a way to check underlying IPC message type from runnable, r=nika
Differential Revision: https://phabricator.services.mozilla.com/D38215

--HG--
extra : moz-landing-system : lando
2019-07-16 19:21:40 +00:00
Olli Pettay
9eeb5dab4f Bug 1541229, higher minimum idle period during page load, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D37908

--HG--
extra : moz-landing-system : lando
2019-07-16 12:07:49 +00:00
Boris Zbarsky
cadd9a872e Bug 1565627. Stop using [array] in nsIBinaryInputStream. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D37897

--HG--
extra : moz-landing-system : lando
2019-07-16 18:39:16 +00:00
Tom Ritter
74b0fa68cc Bug 1565951 - Request a longer timeout on a WebGL test for MinGW builds r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D38029

--HG--
extra : moz-landing-system : lando
2019-07-16 07:58:34 +00:00
Sylvestre Ledru
e77bfc655d Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D38057

--HG--
extra : moz-landing-system : lando
2019-07-16 07:33:44 +00:00
Niklas Hambüchen
b1eb1b43ef Bug 1564930 - Improve "XHR must not be LOADING or DONE" error messages. r=baku
The previous error message suggested that this is an internal error message
pointing out a bad state in the XHR state machine, when in fact this is
a user error (calling `overrideMimeType()` or setting `responseType()` after
`send()`).

This commit improves and disambiguates the error messages, pointing out to
the user what they did wrong, like other browsers do.

Differential Revision: https://phabricator.services.mozilla.com/D37659

--HG--
extra : moz-landing-system : lando
2019-07-12 22:51:10 +00:00
Andrew Halberstadt
3486ba642c Bug 1563797 - Use 'backports.shutil_which' instead of 'which' across the tree r=Callek
Differential Revision: https://phabricator.services.mozilla.com/D37097

--HG--
extra : moz-landing-system : lando
2019-07-11 14:03:39 +00:00
Barret Rennie
988642ea75 Bug 1289211 - Remove InfallibleTArray alias r=erahm
Differential Revision: https://phabricator.services.mozilla.com/D36973

--HG--
extra : moz-landing-system : lando
2019-07-10 03:34:19 +00:00