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

187 Коммитов

Автор SHA1 Сообщение Дата
Bryce Seager van Dyk 08e3d77d61 Bug 1654111 - Rename threads in GMPServiceParent and GMPParent to reflect main thread usage. r=jolin,jya
Differential Revision: https://phabricator.services.mozilla.com/D84266
2020-08-21 16:51:35 +00:00
Nathan Froyd cfb8fb313f Bug 1662251 - stop assigning from NS_Convert* values, mostly; r=sg
This patch was generated by running:

```
perl -p -i \
     -e 's/^(\s+)([a-zA-Z0-9.]+) = NS_ConvertUTF8toUTF16\((.*)\);/\1CopyUTF8toUTF16(\3, \2);/;' \
     -e 's/^(\s+)([a-zA-Z0-9.]+) = NS_ConvertUTF16toUTF8\((.*)\);/\1CopyUTF16toUTF8(\3, \2);/;' \
     $FILE
```

against every .cpp and .h in mozilla-central, and then fixing up the
inevitable errors that happen as a result of matching C++ expressions with
regexes.  The errors fell into three categories:

1. Calling the convert functions with `std::string::c_str()`; these were
   changed to simply pass the string instead, relying on implicit conversion
   to `mozilla::Span`.
2. Calling the convert functions with raw pointers, which is not permitted
   with the copy functions; these were changed to invoke `MakeStringSpan` first.
3. Other miscellaneous errors resulting from over-eager regexes and/or the
   replacement not being type-aware.  These changes were reverted.

Differential Revision: https://phabricator.services.mozilla.com/D88903
2020-09-02 09:54:37 +00:00
Jean-Yves Avenard 8b130686dc Bug 1650696 - P1. Remove remnant of AbstractThread in EME and GMP decoders. r=jolin
Once upon a time, having an AbstractThread was required in order to use MozPromise; this is no longer the case.

Also, now all nsIThread support DirectTask dispatching making the need to wrap a nsIThread in a XPCOMThreadWrapper unecessary.

We probably don't need a dedicated GMPThread and could likely use a BackgroundTaskqueue instead.

Differential Revision: https://phabricator.services.mozilla.com/D86927
2020-08-14 21:04:07 +00:00
Simon Giesecke e3c223da3e Bug 1648010 - Fix uses of NS_LITERAL_STRING with C string literals. r=geckoview-reviewers,agi,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80861
2020-07-01 08:34:12 +00:00
Simon Giesecke cd8b8939b9 Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
Jean-Yves Avenard 5a39f11397 Bug 1648363 - Don't use AbstractThread with GMP service. r=jolin
Currently that thread is always the main thread; but really it doesn't have to be.

We make this use a generic nsISerialEventTarget and rename some members to better reflect what thread is doing what.

Differential Revision: https://phabricator.services.mozilla.com/D81079
2020-06-27 01:26:37 +00:00
Nicholas Nethercote a8f5f49b8a Bug 1645982 - Rename some service getters in `Services.py` to better match the types. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D79791
2020-06-16 23:32:21 +00:00
Simon Giesecke f7f5462a4b Bug 1626570 - Improve handling of copying arrays in dom/media/. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D73627
2020-05-05 11:38:10 +00:00
Andreas Farre b529c76594 Bug 1620594 - Part 6: Use AbstractThread::MainThread instead of SystemGroup::AbstractThread. r=nika
Depends on D67635

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

--HG--
extra : moz-landing-system : lando
2020-04-07 15:17:14 +00:00
Simon Giesecke 88ead5d627 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/media. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D65178

--HG--
extra : moz-landing-system : lando
2020-03-04 15:39:20 +00:00
Simon Giesecke aaf6cb4e75 Bug 1617628 - Hide nsBaseHashtable Put overloads in nsRefPtrHashtable subclass. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D63899

--HG--
extra : moz-landing-system : lando
2020-02-25 17:03:36 +00:00
Eric Rahm 6ea4ed1c80 Bug 1322095 - Part 2: Remove nsAutoPtr from dom/media. r=jya
This converts `nsAutoPtr` usage in dom/media to `UniquePtr`. Beyond just a
search and replace we also needed to update assignment and access of the
`UniquePtr`s. This falls into a few categories:
  - Assignment from a newly constructed object switches to `MakeUnique`
  - Assignment from a raw ptr switches to `UniquePtr::reset`
  - Handing out a raw ptr now requires `UniquePtr::get`
  - Uses `UniquePtr::release` rather than `nsAutoPtr::forget`
  - A few spots are updated to return a `UniquePtr` rather than a raw ptr

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

--HG--
extra : moz-landing-system : lando
2020-02-21 22:44:00 +00:00
Eric Rahm b9ba9be64d Bug 1322095 - Part 1b: Update callbacks to support moved args and convert nsAutoPtr usage. r=jya
In order to support the update to move args when invoking callbacks we:
 - Convert anything that was using WrapRunnable with `nsAutoPtr` to `UniquePtr`
 - Convert anything that was using a non-const ref as a param to either a
   const ref or a by-val copy

Addtionally we convert the remaining `nsAutoPtr` usage to `UniquePtr`.

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

--HG--
extra : moz-landing-system : lando
2020-02-21 22:43:53 +00:00
Simon Giesecke b06d1c3205 Bug 1616848 - Remove monitor from MozPromiseHolder and provide separate MozMonitoredPromiseHolder class. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D63478

--HG--
extra : moz-landing-system : lando
2020-02-20 14:53:20 +00:00
Simon Giesecke b50347f917 Bug 1611415 - Prefer using std::move over forget. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980

--HG--
extra : moz-landing-system : lando
2020-02-13 14:38:48 +00:00
shindli 91aa0518dd Backed out changeset 0c982bc69cb3 (bug 1611415) for causing build bustages in /builds/worker/workspace/build/src/obj-firefox/dist/include/nsCOMPtr CLOSED TREE 2020-02-12 20:13:29 +02:00
Simon Giesecke f604a47fa5 Bug 1611415 - Applied FixItHints from mozilla-non-std-move. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980

--HG--
extra : moz-landing-system : lando
2020-02-12 17:24:41 +00:00
Nika Layzell c56289e054 Bug 1557739 - Be more consistent with IPC Transport APIs, r=jld
Differential Revision: https://phabricator.services.mozilla.com/D60285

--HG--
extra : moz-landing-system : lando
2020-02-06 22:41:56 +00:00
Coroiu Cristina 73c0827187 Backed out 2 changesets (bug 1322095) for build bustage at dist/include/mtransport/runnable_utils.h on a CLOSED TREE
Backed out changeset 14e115ba7f12 (bug 1322095)
Backed out changeset 078c0fe497b7 (bug 1322095)
2020-01-23 19:50:51 +02:00
Eric Rahm e120eee6b8 Bug 1322095 - Part 1b: Update callbacks to support moved args and convert nsAutoPtr usage. r=jya
In order to support the update to move args when invoking callbacks we:
 - Convert anything that was using WrapRunnable with `nsAutoPtr` to `UniquePtr`
 - Convert anything that was using a non-const ref as a param to either a
   const ref or a by-val copy

Addtionally we convert the remaining `nsAutoPtr` usage to `UniquePtr`.

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

--HG--
extra : moz-landing-system : lando
2020-01-23 17:38:18 +00:00
Emilio Cobos Álvarez 5cd5e6f148 Bug 1609996 - Remove mozilla::Swap in favor of std::swap. r=froydnj
Now mfbt/Move.h is empty except for that excellent comment about move
semantics... Should we put it somewhere else and delete the header as a
follow-up? Or just delete the header and carry on?

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

--HG--
extra : moz-landing-system : lando
2020-01-20 16:17:06 +00:00
Gabriele Svelto ace6d1063f Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

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

--HG--
extra : moz-landing-system : lando
2019-12-06 09:24:56 +00:00
Dorel Luca a381d5c96d Backed out changeset f6e53d1c6518 (bug 1600545) for Android build bustage. CLOSED TREE 2019-12-04 17:32:27 +02:00
Gabriele Svelto bc9290f767 Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

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

--HG--
extra : moz-landing-system : lando
2019-12-04 15:01:19 +00:00
Emilio Cobos Álvarez dcb996db21 Bug 1599843 - GMPParent::CloneFrom is infallible. r=jya
Depends on D54981

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

--HG--
extra : moz-landing-system : lando
2019-11-28 00:11:46 +00:00
Bryce Seager van Dyk a866eb3dd2 Bug 1583861 - Tidy includes in files using new logs. r=alwu
I've reworked the includes in most of the files I've touched since I was adding
GMPLog.h:
- Reordered the includes to better match the Google C++ style.
- Removed includes that are already included from the associated header or
  GMPLog.h. I.e. if Foo.cpp includes Foo.h, and Foo.cpp includes other headers
  already included in Foo.h, these were removed.

Depends on D47194

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

--HG--
extra : moz-landing-system : lando
2019-09-27 00:14:23 +00:00
Bryce Seager van Dyk a2dc990c12 Bug 1583861 - Use GMPLog.h macros where applicable. r=alwu
This patch changes instances where the GMP MOZ_LOG is used to prefer using
macros from GMPLog.h:
- Files that don't need their own macros now just directly call
  `GMP_LOG_<LEVEL>` as required.
- Files that use their own macros for formatting have had those macro
  definitions changes so that the macros have unique names and are expressed in
  terms of the macros from GMPLog.h.

I've also made a couple of drive by edits to logs so that they log more than a
couple of words and updated some strings where the incorrect class name was
being logged.

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

--HG--
extra : moz-landing-system : lando
2019-09-27 00:14:46 +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
Nicholas Nethercote d839ef58db Bug 1562331 - Make media.* static prefs follow the naming convention. r=KrisWright
This also removes the following prefs, because they're unused:
- media.autoplay.allow-muted pref
- media.autoplay.blackList-override-default

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

--HG--
extra : rebase_source : 0570540496302b3efedadf4d5115ee5422d5c279
2019-06-28 14:09:05 +10:00
Sylvestre Ledru 03c8e8c2dd Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan
clang-format-8 upstream had some improvements wrt macros
See: https://reviews.llvm.org/D33440
This is why the diff is bigger than usual

# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-04-05 21:41:42 +00:00
Csoregi Natalia ba58e936bd Backed out changeset 4ad80127f89f (bug 1519636) for bustage on MarkupMap.h and nsAccessibilityService.cpp. CLOSED TREE 2019-04-05 09:48:19 +03:00
Sylvestre Ledru d1c1878603 Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan
clang-format-8 upstream had some improvements wrt macros
See: https://reviews.llvm.org/D33440
This is why the diff is bigger than usual

# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-04-04 21:36:16 +00:00
Narcis Beleuzu 24dbe577a5 Backed out changeset 389b6bbd76db (bug 1519636) for bustages on MarkupMap.h . CLOSED TREE 2019-04-05 00:27:56 +03:00
Sylvestre Ledru 399dbd28fe Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan
clang-format-8 upstream had some improvements wrt macros
See: https://reviews.llvm.org/D33440
This is why the diff is bigger than usual

# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-04-04 20:12:23 +00:00
Florian Quèze 12d23f5b8a Bug 1535010 - avoid unnecessary gmp directory creations during startup, r=cpearce.
Differential Revision: https://phabricator.services.mozilla.com/D23320

--HG--
extra : moz-landing-system : lando
2019-03-28 00:06:29 +00:00
Alex Gaynor 177fb00eba Bug 1375863 - fold MOZ_CONTENT_SANDBOX and MOZ_GMP_SANDBOX into MOZ_SANDBOX; r=jld,firefox-build-system-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D22975

--HG--
extra : moz-landing-system : lando
2019-03-18 22:31:59 +00:00
Bryce Van Dyk b1ba8b40cb Bug 1522547 - Differentiate GMPServiceParent and GMPServiceChild __CLASS__ macro. r=cpearce
The macros in these classes are used to output class names in logs.
Differentiating them helps make logs clearer.

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

--HG--
extra : moz-landing-system : lando
2019-03-05 16:21:20 +00:00
Bryce Van Dyk 6beff6688a Bug 1532354 - Remove unused DeleteGMPServiceParent class. r=cpearce
Bug 1352924 removed the usage of this class, so we can safely remove the dead
code.

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

--HG--
extra : moz-landing-system : lando
2019-03-05 00:31:27 +00:00
Ehsan Akhgari e5e885ae31 Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre
# ignore-this-changeset

--HG--
extra : amend_source : 7221c8d15a765df71171099468e7c7faa648f37c
extra : histedit_source : a0cce6015636202bff09e35a13f72e03257a7695
2019-01-18 10:16:18 +01:00
Jean-Yves Avenard a3f78d31a5 Bug 1510265 - P2. Don't use AllPromiseType in GMPServiceParent. r=gerald
It's not needed, and only makes code harder to follow.

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

--HG--
extra : moz-landing-system : lando
2018-12-06 20:16:15 +00:00
Jean-Yves Avenard 44594dd77a Bug 1510265 - P1. Enforce template-parameter classes restrictions in MozPromise. r=gerald
And some required fixes to make things compile.

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

--HG--
extra : moz-landing-system : lando
2018-12-06 16:26:01 +00:00
Sylvestre Ledru 804b8b8883 Bug 1204606 - Reformat of dom/media r=jya
# skip-blame

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

--HG--
extra : moz-landing-system : lando
2018-11-19 13:25:37 +00:00
Miko Mynttinen 4c85ef17cc Bug 1465060 - Part 1: Fix warnings for std::move() use r=froydnj
MozReview-Commit-ID: HpdFXqQdIOO

--HG--
extra : rebase_source : 1e7eea4f2d4ec16ec0c559a8afb26976ddbf4d07
2018-06-01 17:59:07 +02:00
arthur.iakab 7e765f798b Backed out 2 changesets (bug 1465060) for build bustages on security/sandbox/linux/reporter/SandboxReporter.cpp
Backed out changeset 7c8905b6b226 (bug 1465060)
Backed out changeset 10446073eca8 (bug 1465060)
2018-06-03 19:25:41 +03:00
Miko Mynttinen 8d9dc85cd4 Bug 1465060 - Part 1: Fix warnings for std::move() use r=froydnj
MozReview-Commit-ID: HpdFXqQdIOO

--HG--
extra : rebase_source : 619d0e0ff63a2453c80f0c4d9beb906d43fa9b01
2018-06-01 17:59:07 +02:00
Emilio Cobos Álvarez fffb25b74f Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Nicholas Nethercote 51f2b494ea Bug 1448222 - Remove MediaPrefs. r=jya
This patch converts all the prefs in MediaPrefs to the new StaticPrefs system.

Note that the "media.wmf.skip-blacklist" pref was present in both MediaPrefs
and gfxPrefs. The copy in MediaPrefs was never used; this explains why this
patch does not add an entry for it to StaticPrefList.h.

Note also that the patch removes themedia.rust.mp4parser pref, because it's
unused.

MozReview-Commit-ID: IfHP37NbIjY

--HG--
extra : rebase_source : df84ea813b7c366d7be663c696891325610149c8
2018-03-20 09:48:56 +11:00
Chris Pearce b69a154521 Bug 1433309 - Annotate createMediaKeys promise reject with whether failure occurred due to pending shutdown. r=gerald
Around every Firefox update, Netflix see a spike in
MediaKeySystemAccess.createMediaKeys() promise rejects. I am wondering whether
this is caused by the browser restarting to apply a Firefox update while
Netflix's player is loading.  So add more detail to the promise reject as to
the state of the system, to try to validate that theory.

MozReview-Commit-ID: 4IDPsFwKCtq

--HG--
extra : rebase_source : 0a53acb623f895e598845c281edc73b926c74c28
2018-01-26 12:20:35 +13:00
Masatoshi Kimura fb6b360527 Bug 1422856 - Stop using GetNativePath in GMPServiceParent. r=cpearce
MozReview-Commit-ID: 2zr2RfZOPYs

--HG--
extra : rebase_source : e1ba72e9676833fea37267aae862f0dc3d3aaa6e
2017-12-05 01:05:36 +09:00
Gerald Squelart 112525df79 Bug 1329385 - Fix leak in GMPServiceParent::GetContentParent - r=JamesCheng
Using a single-function MozPromise::Then, and capturing a UniquePtr (using
C++14 initialized lambda captures), the PromiseHolder cannot leak anymore.
Also using C++ initialized lambda captures for other variables, to avoid
unnecessary constructions and copies.

MozReview-Commit-ID: DVxyuJNa8YX

--HG--
extra : rebase_source : a7169d616da36597854bf37616228eb72636f2b7
2017-01-18 08:55:57 +11:00