Граф коммитов

19278 Коммитов

Автор SHA1 Сообщение Дата
Mirko Brodesser 887a1c3c6d Bug 1575495: part 4) Add `AddLineBreak` to `CurrentLineContent`. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D42840

--HG--
extra : moz-landing-system : lando
2019-08-23 14:00:50 +00:00
Honza Bambas bf7dde4bf0 Bug 1574882 - Always add `.moz_log` to target logging filenames, r=erahm
Differential Revision: https://phabricator.services.mozilla.com/D42487

--HG--
extra : moz-landing-system : lando
2019-08-23 16:51:40 +00:00
Gijs Kruitbosch 10013b939f Bug 1575566 - stop using the directory service when creating anonymous temporary files, r=froydnj
Note that this code asserts it gets run in the parent process, so we can be sure that we never
want the content process sandbox-accessible dir or similar (though tbf, that seems odd given
we have DOM machinery to proxy from the child to here... but that's what happens today).

This will start using the actual temp dir even in the case of e.g. xpcshell, which normally
dependency-injects a different (also temp) dir and reuses it as the profile as well as temp
dir ( https://searchfox.org/mozilla-central/rev/03853a6e87c4a9405fce1de49e5d03b9e7a7a274/testing/xpcshell/head.js#1207-1226 )
if and only if anything calls do_get_profile .

I think this is likely OK... but if not, we'll have to come up with a more complicated
solution...

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

--HG--
extra : moz-landing-system : lando
2019-08-23 14:00:27 +00:00
Cameron McCormack a1e18da1b1 Bug 1573090 - Part 2: Look up ELF symbol tables directly when pre-symbolicating Gecko profiles on Linux. r=gerald
Whereas previously MozDescribeCodeAddress would have handled demangling,
we need to explicitly do that from our new GetFunction method.  The string we
generate is now more useful for the profiler to merge -- having dropped the
address in the previous patch, and the file & line number and library in this
patch.

While we're at it, try to demangle Rust symbols too.

Ideally we'd add Rust symbol handling to DemangleSymbol in
StackWalk.cpp, but that lives in mozglue, which currently cannot have
any Rust crate dependencies.

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

--HG--
extra : moz-landing-system : lando
2019-08-23 05:45:16 +00:00
Mike Hommey 66d7fe943e Bug 1575420 - Replace MOZ_WIDGET_TOOLKIT value of "gtk3" with "gtk". r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D42765

--HG--
extra : moz-landing-system : lando
2019-08-21 12:25:42 +00:00
Maliha Islam f6e1118c76 Bug 1540813 - Support new ARIA roles insertion and deletion, r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D42911

--HG--
extra : moz-landing-system : lando
2019-08-21 20:36:39 +00:00
Gijs Kruitbosch 51739da3cb Bug 1163103 - stop using NS_GetSpecialDirectory off the main thread within the cycle collector (via nsDumpUtils.cpp), r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D42856

--HG--
extra : moz-landing-system : lando
2019-08-21 17:23:03 +00:00
Gijs Kruitbosch 87c086d34e Bug 1575045 - stop using the directory service off the main thread from nsSystemInfo, r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D42820

--HG--
extra : moz-landing-system : lando
2019-08-21 11:16:02 +00:00
Robert Strong 8be2059dbd Bug 1486637 - Backout bug 1486637 and related patches. r=agashlin
Differential Revision: https://phabricator.services.mozilla.com/D42143

--HG--
extra : moz-landing-system : lando
2019-08-19 19:43:17 +00:00
Hiroyuki Ikezoe 2eec537348 Bug 1573648 - Introduce ToDoubleAllowTrailingChars and ToFloatAllowTrailingChars. r=njn
Differential Revision: https://phabricator.services.mozilla.com/D42239

--HG--
extra : moz-landing-system : lando
2019-08-16 22:38:01 +00:00
Brian Hackett 091f2992d2 Bug 1573938 - Never collect wrapper JSObjects when recording/replaying, r=mccr8.
Differential Revision: https://phabricator.services.mozilla.com/D42011

--HG--
extra : moz-landing-system : lando
2019-08-16 20:51:12 +00:00
Nathan Froyd f21661fdf8 Bug 1571759 - add nsTArray::EmplaceBack; r=erahm
Much preferred to `AppendElement(T(...))`.

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

--HG--
extra : moz-landing-system : lando
2019-08-16 00:18:57 +00:00
Aaron Klotz 112f1594bf Bug 1573623: Add RunOnShutdown, a variant of ClearOnShutdown which supports passing callables; r=froydnj
This patch adds `RunOnShutdown`, which allows the caller to supply any callable
to be invoked during the specified shutdown phase. This allows us to do more
than just clear smart pointers without needing to write a bunch of observer
service boilerplate.

We use `std::function` to hold the callable.

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

--HG--
extra : moz-landing-system : lando
2019-08-15 19:08:39 +00:00
Nathan Froyd f7a731abd5 Bug 1573160 - shutdown newly-spawned threads if we're shutting down; r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D41551

--HG--
extra : moz-landing-system : lando
2019-08-15 17:29:26 +00:00
Jonathan Kew 49e3e4c0e0 Bug 1573229 - part 1 - Add infallible versions of the memory-allocation functions in CountingAllocatorBase. r=njn
Differential Revision: https://phabricator.services.mozilla.com/D41720

--HG--
extra : moz-landing-system : lando
2019-08-15 00:49:55 +00:00
Jon Coppeard c772fc6cda Bug 1573844 - Remove external references to js::Class r=mccr8
Depends on D41985

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

--HG--
extra : moz-landing-system : lando
2019-08-14 17:15:15 +00:00
Jon Coppeard 6d38179350 Bug 1573844 - Remove external references to js::Jsvalify and js::Valueify r=mccr8
These are now no-ops so can be removed.

Depends on D41983

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

--HG--
extra : moz-landing-system : lando
2019-08-14 17:24:59 +00:00
Jon Coppeard 66fc30ba53 Bug 1573844 - Remove js::Class definition and alias JSClass to it r=tcampbell,mccr8
JSClass contained void* members corresponding to the internal pointer members of js::Class. This stores the internal members in JSClass and removes js::Class.

This leaves js::Class aliased to JSClass while we remove references to it. I also aliased Jsvalify and Valueify into global scope temporarily to make this compile. These get removed in the following patches.

I had to remove a few functions which now don't compile with js::Class being the same type as JSClass.

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

--HG--
extra : moz-landing-system : lando
2019-08-15 08:32:22 +00:00
Mats Palmgren c784db904f Bug 1557825 part 1 - Implement 'display:block ruby'. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D40211

--HG--
extra : moz-landing-system : lando
2019-08-14 14:38:31 +00:00
Nathan Froyd 87c432d06a Bug 1570982 - remove `CPP_THROW_NEW`; r=glandium
We always define it to the same thing, and we're inconsistent in whether
we use `CPP_THROW_NEW` or `throw()`, so we might as well just use the
standard C++ thing and get rid of some baggage.

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

--HG--
extra : moz-landing-system : lando
2019-08-14 01:32:41 +00:00
Henri Sivonen c562792b2e Bug 1490593 - Move FFI for encoding_rs::mem to a vendored crate. r=froydnj
Also remove most C++-side optimizations for avoiding calls to Rust
for short strings now that we have LTO between C++ and Rust. Since
LTO still leaves the overhead of one function call layer, inlined
function call avoidance optimization is left in place in the
IsUTF8 and in the 8-bit IsASCII cases for which perfherder flags
the difference as significant for the length 15.

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

--HG--
extra : moz-landing-system : lando
2019-08-14 07:53:34 +00:00
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