17341 Commits

Author SHA1 Message Date
Cosmin Sabou
94617f91cf Backed out 19 changesets (bug 1434399) for build bustages on nsXULPopupManager.cpp on a CLOSED TREE
Backed out changeset 499f6dffd9cb (bug 1434399)
Backed out changeset 018290612415 (bug 1434399)
Backed out changeset f4c3179f8e59 (bug 1434399)
Backed out changeset f3ce2826b857 (bug 1434399)
Backed out changeset 6d2391af01dd (bug 1434399)
Backed out changeset dc98ed8c609a (bug 1434399)
Backed out changeset 8eaa395d6200 (bug 1434399)
Backed out changeset 19b18f4a53be (bug 1434399)
Backed out changeset 8ff378a6e96a (bug 1434399)
Backed out changeset 60fe73be1a26 (bug 1434399)
Backed out changeset faefb2751fdc (bug 1434399)
Backed out changeset 55cdf8b3a959 (bug 1434399)
Backed out changeset b578cc8efb92 (bug 1434399)
Backed out changeset 54cc4cb2fca1 (bug 1434399)
Backed out changeset f5343ef34d6c (bug 1434399)
Backed out changeset 8fb30e066cbd (bug 1434399)
Backed out changeset 21341b656b0f (bug 1434399)
Backed out changeset fab1f8b087a2 (bug 1434399)
Backed out changeset 55250a54852a (bug 1434399)
2018-01-31 22:45:26 +02:00
Boris Zbarsky
467ed0721d Bug 1434399 part 13. Remove C++ uses of nsIDOMXULDocument. r=mystor
MozReview-Commit-ID: KSsXLra5DQk
2018-01-31 14:49:28 -05:00
Sebastian Hengst
07250813a5 Backed out changeset 5ccb0581b72c (bug 1371699) for failing wpt webvtt/parsing/cue-text-parsing/tests/entities.html on Linux. CLOSED TREE
--HG--
extra : amend_source : e773ac9be09b6a87bd906f207f7920ae3b874822
extra : histedit_source : 62306afa6b4d85897d3b0fdd0e056cdcb09087c3
2018-01-31 20:31:35 +02:00
Sebastian Hengst
14018b66f7 Backed out changeset 52b418c8febf (bug 1371699) for failing wpt webvtt/parsing/cue-text-parsing/tests/entities.html on Linux
--HG--
extra : histedit_source : d98d3d57b04e85bbee527549ecc271e5fc02e21e
2018-01-31 20:31:22 +02:00
Sebastian Hengst
e5cbb643b9 Backed out changeset 782a4eefd04b (bug 1371699) for failing wpt webvtt/parsing/cue-text-parsing/tests/entities.html on Linux
--HG--
extra : histedit_source : 495c4f1cded17f7980b0551fa72980a89cc304e7
2018-01-31 20:31:09 +02:00
Sebastian Hengst
b27faafcd2 Backed out changeset ba730a1d259a (bug 1371699) for failing wpt webvtt/parsing/cue-text-parsing/tests/entities.html on Linux
--HG--
extra : histedit_source : 5357e0cb4f0f4dc850cc25287bc4ad75ff55c4f8
2018-01-31 20:30:57 +02:00
Sebastian Hengst
e33e198739 Backed out changeset f1221589e7a6 (bug 1405974) for failing wpt webvtt/parsing/cue-text-parsing/tests/entities.html on Linux
--HG--
extra : histedit_source : d11737083bf4383b50707e024539f45f174531f9
2018-01-31 20:30:45 +02:00
Sebastian Hengst
b30ef0fc58 Backed out changeset cf81d20f6713 (bug 1371699) for failing wpt webvtt/parsing/cue-text-parsing/tests/entities.html on Linux
--HG--
extra : histedit_source : cfe4407220971165f82123842f488b9fe48eab66
2018-01-31 20:30:34 +02:00
Andrea Marchesini
ffc69d5c96 Bug 1371699 - Correct canceling of the AsyncWait() callback in NonBlockingAsyncInputStream, r=froydnj 2018-01-31 16:45:21 +01:00
Andrea Marchesini
69f4700dfd Bug 1405974 - NonBlockingAsyncInputStream must take the ownership of the underlying stream, r=qdot 2018-01-31 16:45:20 +01:00
Andrea Marchesini
11e06fdb47 Bug 1371699 - NonBlockingAsyncInputStream::ReadSegments passes the correct stream to the writer callback, r=froydnj 2018-01-31 16:45:20 +01:00
Andrea Marchesini
d1cf975a06 Bug 1371699 - gtest for NonBlockingAsyncInputStream, r=froydnj 2018-01-31 16:45:20 +01:00
Andrea Marchesini
c16f42b917 Bug 1371699 - Use of NonBlockingAsyncInputStream in our code base, r=froydnj 2018-01-31 16:45:20 +01:00
Andrea Marchesini
51af3a8898 Bug 1371699 - Implement NonBlockingAsyncInputStream - nsIAsyncInputStream wrapper for non-blocking non-async streams, r=froydnj 2018-01-31 16:45:20 +01:00
Andreas Pehrson
f12e78691b Bug 1299515 - Make const nsMainThreadPtrHandle<T> usable. r=erahm
This enables having a const nsMainThreadPtrHandle<T> member which we want to
ensure doesn't get assigned to, but whose (the `T`'s) non-const methods are
still usable on main thread. Similar to how RefPtr<T> works.

MozReview-Commit-ID: 8CG0MwIZmLc

--HG--
extra : rebase_source : f0e897d3bf4f9a4d752e964ef63de73a9e710752
2017-11-22 11:24:18 +01:00
arthur.iakab
62a3ab0fa8 Merge mozilla-central to mozilla-inbound 2018-01-31 00:45:33 +02:00
Sebastian Hengst
732cb1d98b merge mozilla-inbound to mozilla-central. r=merge a=merge 2018-01-31 00:22:27 +02:00
Nika Layzell
80fab95acc Bug 1433015 - Part 2: Change the xpcom test to use the observer service, r=froydnj
MozReview-Commit-ID: JSnMIvu97aT
2018-01-30 15:45:21 -05:00
Nika Layzell
d3046cbdb8 Bug 1433015 - Part 1: Fix a typo in xpcom_macros, r=froydnj
MozReview-Commit-ID: 3f1wsWgQfpG
2018-01-30 15:45:21 -05:00
Kris Maglione
918ed6c474 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : source : 12fc4dee861c812fd2bd032c63ef17af61800c70
extra : intermediate-source : 34c999fa006bffe8705cf50c54708aa21a962e62
extra : histedit_source : b2be2c5e5d226e6c347312456a6ae339c1e634b0
2018-01-29 15:20:18 -08:00
Gurzau Raul
c380dfe905 Merge inbound to mozilla-central. a=merge 2018-01-30 12:01:49 +02:00
Boris Zbarsky
7c392f077e Bug 1418085 part 6. Remove nsIDOMHTMLElement. r=mystor
MozReview-Commit-ID: 5QUyFeAQYZQ
2018-01-30 00:25:36 -05:00
Boris Zbarsky
9da3878bc9 Bug 1418076 part 11. Eliminate the nsIDOMHTMLDocument interface. r=mystor
MozReview-Commit-ID: 4lEcUeenbg3
2018-01-26 01:03:25 -05:00
Cosmin Sabou
9a65a40178 Backed out 3 changesets (bug 1431533) for Android mochitest failures on testEventDispatcher on a CLOSED TREE
Backed out changeset a1eca62826a1 (bug 1431533)
Backed out changeset 34c999fa006b (bug 1431533)
Backed out changeset e2674287e57f (bug 1431533)
2018-01-30 07:17:48 +02:00
Kris Maglione
6476f95b13 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : source : 12fc4dee861c812fd2bd032c63ef17af61800c70
2018-01-29 15:20:18 -08:00
Andrew McCreight
9d063bfac8 Bug 1420975 - Add a environment variable to record JS stack for leaks. r=froydnj,mrbkap
This patch adds a new environment variable XPCOM_MEM_LOG_JS_STACK that
changes XPCOM leakchecking to record a JS stack for all objects, in
addition to a C++ stack. This is useful when a C++ object is being
leaked due to JS. The JS stack will be printed if the object leaks, if
it is used in combination with XPCOM_MEM_BLOAT_LOG=1 and
XPCOM_MEM_LOG_CLASSES=nsFoo, if nsFoo is the class of interest.

This patch moves a few XPConnect functions for recording the stack
into xpcpublic.h so they can be called from nsTraceRefcnt.cpp.

MozReview-Commit-ID: FX2QVCSXz4f

--HG--
extra : rebase_source : 5bd4e341072f4cf7d3be774b63d2107479fe9985
2018-01-10 14:02:45 -08:00
Brindusan Cristian
af8879d1eb Backed out 2 changesets (bug 1431533) for ESlint failures on a CLOSED TREE
Backed out changeset 6e56f4c8843e (bug 1431533)
Backed out changeset 12fc4dee861c (bug 1431533)
2018-01-30 02:32:43 +02:00
Kris Maglione
c276bb9375 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : rebase_source : c004a023389f1f6bf3d2f3efe93c13d423b23ccd
2018-01-29 15:20:18 -08:00
Andrea Marchesini
a8a933a51f Bug 1425559 - Implement nsIThreadManager::spinEventLoopUntilOrShutdown, r=smaug
Currently nsIThreadManager::spinEventLoopUntil doesn't monitor the shutting
down. Firefox shutting down can be blocked by a 'broken' use of
nsIThreadManager::spinEventLoopUntil.
nsIThreadManager::spinEventLoopUntilOrShutdown should be used instead.
2018-01-28 08:41:36 +01:00
Margareta Eliza Balazs
955a67c65b Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-01-29 18:37:08 +02:00
Daniel Holbert
1e76715d6d Bug 1433584: Fix misleading nsTArray::SetCapacity documentation to avoid implying that its arg is a delta. r=froydnj
DONTBUILD because comment-only

MozReview-Commit-ID: 8cr092aAJSm

--HG--
extra : rebase_source : 730be11254e22a81cca78911813444b366e16eaa
2018-01-26 14:24:48 -08:00
David Parks
93bbbac8e4 Bug 1382251: Part 6 - Start/stop new top-level brokering actors on their own threads; r=jld
The FunctionBroker actors allow the NPAPI process (child) to run methods on the main process (parent).  Both the parent and the child run dedicated threads for this task -- this is a top-level protocol.
2017-11-06 10:29:15 -08:00
David Parks
4d440ebfcc Bug 1382251: Part 2 - Allow constructing nsWindowsDllInterceptor from module name; r=aklotz
Allow constructor to behave like Init().
2017-11-06 09:51:06 -08:00
David Parks
6e41063d30 Bug 1382251: Part 1 - Add x64 opcodes to nsWindowsDllInterceptor needed for plugin process SSL brokering; r=aklotz
Adds "LEA reg, opcode", "mov word ptr [reg+disp8], reg", "and [reg+disp8], imm8" and "MOV r/m8, imm8" to DLLInterceptor.
2017-07-19 09:12:12 -07:00
Ehsan Akhgari
de3684029d Bug 1433563 - Remove nsIDOMCDATASection; r=qdot 2018-01-26 17:52:44 -05:00
Masatoshi Kimura
410788f63d Bug 1428543 - Add nsIFile::HumanReadablePath. r=froydnj
This method is used to replace some GetNativePath usage for logging.

MozReview-Commit-ID: 9nWf2r4oviA

--HG--
extra : rebase_source : b58e45ab38621179cd802979131fdddbfe65079e
extra : intermediate-source : b4ded2247082f98fe18eb640c5fafeb9bc107ac0
extra : source : 21a82c1faeffc7c0d7b3a5ef0ae4c5243c81a586
2017-12-30 23:32:27 +09:00
Masatoshi Kimura
51d70c873f Bug 1428543 - Implement FileDescriptorFile::GetPersistentDescriptor. r=froydnj
This method is used by some subsequent patches when unique opaque identifiers are necessary.

MozReview-Commit-ID: AreqK4MHdJP

--HG--
extra : rebase_source : d5b85c2c9212618f54a6ac2f5199651b01c99510
extra : intermediate-source : 67c3c7a1012b9fdd628928bec61472c6ce580616
extra : source : c9a67330c600dbe454fd2ce5025247171e0c0e22
2017-12-17 13:37:03 +09:00
Masatoshi Kimura
17fb30182d Bug 1428543 - Add mozilla::filesystem::Path and use it in nsIFile. r=froydnj
Currently only |value_type| is implemented.

MozReview-Commit-ID: 1mejzvkuako

--HG--
extra : rebase_source : 69e08073adbb9a866db26e515702a0659ece0a70
extra : intermediate-source : 3696381ddfdc19ab2f901ca4247e1cb4efb27731
extra : source : 35d760da1d73dd51614f434c26e5ce80ff690829
2017-12-28 03:03:35 +09:00
Nika Layzell
2fa989d926 Bug 1431122 - Part 2: Add tests for UnorderedRemoveElement[s]At, r=froydnj
MozReview-Commit-ID: DuB2oiT8l49
2018-01-23 17:27:37 -05:00
Nika Layzell
0c171ce388 Bug 1431122 - Part 1: Add UnorderedRemoveElement[s]At to nsTArray, r=froydnj
MozReview-Commit-ID: H0oqG7H7299
2018-01-23 17:27:35 -05:00
Nika Layzell
281f61ed94 Bug 1293362 - Part 8: Add some tests for using xpcom interfaces from rust code, r=froydnj
MozReview-Commit-ID: 1b6tfHtyDWf
2018-01-23 17:27:33 -05:00
Nika Layzell
98ea82060d Bug 1293362 - Part 7: Expose the nsComponentManager static interfaces to rust code, r=froydnj
MozReview-Commit-ID: D4kvNFgmIpH
2018-01-23 17:27:32 -05:00
Nika Layzell
3db03efd58 Bug 1293362 - Part 6: Expose the cached XPCOM service getters to rust code, r=froydnj
MozReview-Commit-ID: 5oy4wVaaVeP
2018-01-23 17:27:30 -05:00
Nika Layzell
a8351a819f Bug 1293362 - Part 5: Allow implementing xpcom interfaces from rust code with a custom derive, r=froydnj
MozReview-Commit-ID: 90Yv3H40jZW
2018-01-23 17:27:28 -05:00
Nika Layzell
c33284aec0 Bug 1293362 - Part 4: Generate runtime bindings for calling xpcom methods from rust, r=froydnj
MozReview-Commit-ID: K37KyHkKsSl
2018-01-23 17:27:26 -05:00
Nika Layzell
3fe123346a Bug 1293362 - Part 3: Add rust type information to the idl-parser for xpidl.py, r=froydnj
MozReview-Commit-ID: IPcuPuXDZho
2018-01-23 17:27:25 -05:00
Nika Layzell
94e3d3cb1b Bug 1293362 - Part 2: Add skeleton crates for xpcom bindings, r=froydnj
MozReview-Commit-ID: H5nxsk4cg2E
2018-01-23 17:27:23 -05:00
Christian Holler
8e72e4cc2f Bug 1431090 - Prepare tools/fuzzing/ to be used with JS_STANDALONE. r=froydnj
This patch adjusts tools/fuzzing/ in such a way that the relevant parts can be
reused in the JS engine. Changes in detail include:

* Various JS_STANDALONE checks to exclude parts that cannot be included in
  those builds.

* Turn LibFuzzerRegistry and LibFuzzerRunner into generic FuzzerRegistry and
  FuzzerRunner classes and use them for AFL as well. Previously, AFL was
  piggy-backing on gtests which was kind of an ugly solution anyway (besides
  that it can't work in JS). Now more code like registry and harness is
  shared between the two and they follow almost the same call paths and entry
  points. AFL macros in FuzzingInterface have been rewritten accordingly.
  This also required name changes in various places. Furthermore, this unifies
  the way, the fuzzing target is selected, using the FUZZER environment
  variable rather than LIBFUZZER (using LIBFUZZER in browser builds will give
  you a deprecation warning because I know some people are using this already
  and need time to switch). Previously, AFL target had to be selected using
  GTEST_FILTER, so this is also much better now.

* I had to split up FuzzingInterface* such that the STREAM parts are in a
  separate set of files FuzzingInterfaceStream* because they use nsStringStream
  which is not allowed to be included into the JS engine even in a full browser
  build (error: "Using XPCOM strings is limited to code linked into libxul.").
  I also had to pull FuzzingInterface.cpp (the RAW part only) into the header
  and make it static because otherwise, would have to make not only separate
  files but also separate libraries to statically link to the JS engine, which
  seemed overkill for a single small function. The streaming equivalent of the
  function is still in a cpp file.

* LibFuzzerRegister functions are now unique by appending the module name to
  avoid redefinition errors.

MozReview-Commit-ID: 44zWCdglnHr

--HG--
extra : rebase_source : fe07c557032fd33257eb701190becfaf85ab79d0
2018-01-17 15:20:35 +01:00
Coroiu Cristina
faa2f8c7da Backed out 2 changesets (bug 1431090) for Bf bustage at src/tools/fuzzing/interface/harness/FuzzerTestHarness.h
Backed out changeset 2e98bda3f397 (bug 1431090)
Backed out changeset eb6acc9e44ad (bug 1431090)

--HG--
rename : tools/fuzzing/registry/FuzzerRegistry.cpp => tools/fuzzing/libfuzzer/harness/LibFuzzerRegistry.cpp
rename : tools/fuzzing/registry/FuzzerRegistry.h => tools/fuzzing/libfuzzer/harness/LibFuzzerRegistry.h
rename : tools/fuzzing/interface/harness/FuzzerRunner.cpp => tools/fuzzing/libfuzzer/harness/LibFuzzerRunner.cpp
rename : tools/fuzzing/interface/harness/FuzzerRunner.h => tools/fuzzing/libfuzzer/harness/LibFuzzerRunner.h
rename : tools/fuzzing/interface/harness/FuzzerTestHarness.h => tools/fuzzing/libfuzzer/harness/LibFuzzerTestHarness.h
rename : tools/fuzzing/interface/harness/moz.build => tools/fuzzing/libfuzzer/harness/moz.build
2018-01-23 13:49:26 +02:00
Christian Holler
4ce6f81fee Bug 1431090 - Prepare tools/fuzzing/ to be used with JS_STANDALONE. r=froydnj
This patch adjusts tools/fuzzing/ in such a way that the relevant parts can be
reused in the JS engine. Changes in detail include:

* Various JS_STANDALONE checks to exclude parts that cannot be included in
  those builds.

* Turn LibFuzzerRegistry and LibFuzzerRunner into generic FuzzerRegistry and
  FuzzerRunner classes and use them for AFL as well. Previously, AFL was
  piggy-backing on gtests which was kind of an ugly solution anyway (besides
  that it can't work in JS). Now more code like registry and harness is
  shared between the two and they follow almost the same call paths and entry
  points. AFL macros in FuzzingInterface have been rewritten accordingly.
  This also required name changes in various places. Furthermore, this unifies
  the way, the fuzzing target is selected, using the FUZZER environment
  variable rather than LIBFUZZER (using LIBFUZZER in browser builds will give
  you a deprecation warning because I know some people are using this already
  and need time to switch). Previously, AFL target had to be selected using
  GTEST_FILTER, so this is also much better now.

* I had to split up FuzzingInterface* such that the STREAM parts are in a
  separate set of files FuzzingInterfaceStream* because they use nsStringStream
  which is not allowed to be included into the JS engine even in a full browser
  build (error: "Using XPCOM strings is limited to code linked into libxul.").
  I also had to pull FuzzingInterface.cpp (the RAW part only) into the header
  and make it static because otherwise, would have to make not only separate
  files but also separate libraries to statically link to the JS engine, which
  seemed overkill for a single small function. The streaming equivalent of the
  function is still in a cpp file.

* LibFuzzerRegister functions are now unique by appending the module name to
  avoid redefinition errors.

MozReview-Commit-ID: 44zWCdglnHr

--HG--
rename : tools/fuzzing/libfuzzer/harness/LibFuzzerRunner.cpp => tools/fuzzing/interface/harness/FuzzerRunner.cpp
rename : tools/fuzzing/libfuzzer/harness/LibFuzzerRunner.h => tools/fuzzing/interface/harness/FuzzerRunner.h
rename : tools/fuzzing/libfuzzer/harness/LibFuzzerTestHarness.h => tools/fuzzing/interface/harness/FuzzerTestHarness.h
rename : tools/fuzzing/libfuzzer/harness/moz.build => tools/fuzzing/interface/harness/moz.build
rename : tools/fuzzing/libfuzzer/harness/LibFuzzerRegistry.cpp => tools/fuzzing/registry/FuzzerRegistry.cpp
rename : tools/fuzzing/libfuzzer/harness/LibFuzzerRegistry.h => tools/fuzzing/registry/FuzzerRegistry.h
extra : rebase_source : 7d0511ca0591dbf4d099376011402e063a79ee3b
2018-01-17 15:20:35 +01:00