summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO35
-rw-r--r--0001-Use-remoting-name-for-GDK-application-names.patch32
-rw-r--r--0002-Bug-1660901-Support-the-fstat-like-subset-of-fstatat.patch46
-rw-r--r--0003-Bug-1660901-ignore-AT_NO_AUTOMOUNT-in-fstatat-system.patch31
-rw-r--r--PKGBUILD48
-rw-r--r--unity-menubar.patch16
6 files changed, 154 insertions, 54 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 087bf79d075c..76da62ecf843 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,8 +1,8 @@
# Generated by mksrcinfo v8
-# Tue Sep 1 21:07:22 UTC 2020
+# Sat Sep 26 09:09:35 UTC 2020
pkgbase = firefox-kde-opensuse
pkgdesc = Standalone web browser from mozilla.org with OpenSUSE patch, integrate better with KDE
- pkgver = 80.0.1
+ pkgver = 81.0
pkgrel = 1
url = https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox
arch = i686
@@ -20,19 +20,20 @@ pkgbase = firefox-kde-opensuse
makedepends = libpulse
makedepends = inetutils
makedepends = autoconf2.13
- makedepends = rust
makedepends = cargo
makedepends = mercurial
makedepends = llvm
makedepends = clang
+ makedepends = rust
makedepends = jack
makedepends = gtk2
makedepends = nodejs
makedepends = cbindgen
makedepends = nasm
+ makedepends = xz
makedepends = python
makedepends = python-psutil
- makedepends = xz
+ makedepends = python-zstandard
depends = mozilla-common
depends = libxt
depends = mime-types
@@ -58,19 +59,18 @@ pkgbase = firefox-kde-opensuse
optdepends = networkmanager: Location detection via available WiFi networks
optdepends = speech-dispatcher: Text-to-Speech
optdepends = pulseaudio: Audio support
- provides = firefox=80.0.1
+ provides = firefox=81.0
conflicts = firefox
options = !emptydirs
- source = hg+https://hg.mozilla.org/mozilla-unified#tag=FIREFOX_80_0_1_RELEASE
+ source = hg+https://hg.mozilla.org/mozilla-unified#tag=FIREFOX_81_0_RELEASE
source = mozconfig
source = firefox.desktop
source = vendor.js
source = kde.js
- source = firefox-branded-icons-0d8818883a2a1d201d7eb40ca0094be91432d2a1.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/0d8818883a2a1d201d7eb40ca0094be91432d2a1/firefox/firefox-branded-icons.patch
- source = firefox-kde-0d8818883a2a1d201d7eb40ca0094be91432d2a1.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/0d8818883a2a1d201d7eb40ca0094be91432d2a1/firefox/firefox-kde.patch
- source = mozilla-kde-0d8818883a2a1d201d7eb40ca0094be91432d2a1.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/0d8818883a2a1d201d7eb40ca0094be91432d2a1/mozilla-kde.patch
- source = mozilla-nongnome-proxies-0d8818883a2a1d201d7eb40ca0094be91432d2a1.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/0d8818883a2a1d201d7eb40ca0094be91432d2a1/mozilla-nongnome-proxies.patch
- source = mozilla-system-nspr-0d8818883a2a1d201d7eb40ca0094be91432d2a1.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/0d8818883a2a1d201d7eb40ca0094be91432d2a1/mozilla-system-nspr.patch
+ source = firefox-branded-icons-e64141ffa905efdf657306eda2627c868b399852.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/e64141ffa905efdf657306eda2627c868b399852/firefox/firefox-branded-icons.patch
+ source = firefox-kde-e64141ffa905efdf657306eda2627c868b399852.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/e64141ffa905efdf657306eda2627c868b399852/firefox/firefox-kde.patch
+ source = mozilla-kde-e64141ffa905efdf657306eda2627c868b399852.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/e64141ffa905efdf657306eda2627c868b399852/mozilla-kde.patch
+ source = mozilla-nongnome-proxies-e64141ffa905efdf657306eda2627c868b399852.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/e64141ffa905efdf657306eda2627c868b399852/mozilla-nongnome-proxies.patch
source = unity-menubar.patch
source = add_missing_pgo_rule.patch
source = pgo_fix_missing_kdejs.patch
@@ -82,6 +82,9 @@ pkgbase = firefox-kde-opensuse
source = 5022efe33088.patch
source = mozilla-1516803.patch
source = build-disable-elfhack.patch
+ source = 0002-Bug-1660901-Support-the-fstat-like-subset-of-fstatat.patch
+ source = 0003-Bug-1660901-ignore-AT_NO_AUTOMOUNT-in-fstatat-system.patch
+ source = mozilla-1644409.patch::https://hg.mozilla.org/mozilla-central/raw-rev/795c8762b16b
md5sums = SKIP
md5sums = d7bf65ba1d9f606545dcf887d23bec9f
md5sums = a26a061efb4def6572d5b319d657f1d6
@@ -89,20 +92,22 @@ pkgbase = firefox-kde-opensuse
md5sums = 05bb69d25fb3572c618e3adf1ee7b670
md5sums = c0f68250d27f208efcdee710207cd3e4
md5sums = 77c039d55aa155391db518afd638a0b9
- md5sums = cd69565c4ac2696d5245229974a296da
+ md5sums = 93fc217bcdc9d936727a1c3446e72650
md5sums = 0a5733b7a457a2786c2dd27626a1bf88
- md5sums = cd9d97a39bf001217a7a2f0973e64ecd
- md5sums = 20526c2f149f05cd2bcf29366f4af149
+ md5sums = 39cf2f916317bae3edb7133d681684bd
md5sums = fe24f5ea463013bb7f1c12d12dce41b2
md5sums = 3c383d371d7f6ede5983a40310518715
md5sums = d24681f9a46ae23689b2867f4ab6eaae
md5sums = dbb578ee6ef93f0d28584d38904fac70
md5sums = f867ae41a722630cc5567e2dcc51676d
md5sums = 1e473ebbf9e5d648e498c58dd6c789e6
- md5sums = e8585d1477f5f057603f38fcceec5c3f
+ md5sums = 7b479b606ce2580f786a021cc0c3c5a1
md5sums = 129f1d0a83a9034e49c8ff62f5e0013d
md5sums = efcddfb6595b356b3faaf6b93313659e
md5sums = aa9261c4d407cf809bf8275e6f2e52c7
+ md5sums = ad9899e50a611d007ff17387deea6139
+ md5sums = 680ab9eee674476e1c10c998996a7f73
+ md5sums = 7c42a1e4928330d82409283e9af6422c
pkgname = firefox-kde-opensuse
diff --git a/0001-Use-remoting-name-for-GDK-application-names.patch b/0001-Use-remoting-name-for-GDK-application-names.patch
index c58bc5accec0..b1dcee50ffad 100644
--- a/0001-Use-remoting-name-for-GDK-application-names.patch
+++ b/0001-Use-remoting-name-for-GDK-application-names.patch
@@ -1,15 +1,18 @@
-# HG changeset patch
-# User Andrew Crerar <andrew@crerar.io>
-# Date 1588883129 14400
-# Thu May 07 16:25:29 2020 -0400
-# Node ID 9970281ae22ce7cad35870ef91d27149ec7e9879
-# Parent c9a2a8be0647d05e5f354794c3e7b7298cdbe26f
-Use remoting name for GDK application names
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Mon, 25 Mar 2019 20:30:11 +0100
+Subject: [PATCH] Use remoting name for GDK application names
+
+---
+ toolkit/xre/nsAppRunner.cpp | 6 +-----
+ widget/gtk/nsAppShell.cpp | 11 ++++-------
+ 2 files changed, 5 insertions(+), 12 deletions(-)
diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp
+index 49e2c73986ab..43ebcac381c7 100644
--- a/toolkit/xre/nsAppRunner.cpp
+++ b/toolkit/xre/nsAppRunner.cpp
-@@ -3703,11 +3703,7 @@
+@@ -3822,11 +3822,7 @@ int XREMain::XRE_mainStartup(bool* aExitFlag) {
// consistently.
// Set program name to the one defined in application.ini.
@@ -23,6 +26,7 @@ diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp
// Initialize GTK here for splash.
diff --git a/widget/gtk/nsAppShell.cpp b/widget/gtk/nsAppShell.cpp
+index cfe022e65d82..06325264dbb1 100644
--- a/widget/gtk/nsAppShell.cpp
+++ b/widget/gtk/nsAppShell.cpp
@@ -24,6 +24,7 @@
@@ -33,14 +37,18 @@ diff --git a/widget/gtk/nsAppShell.cpp b/widget/gtk/nsAppShell.cpp
#include "ScreenHelperGTK.h"
#include "HeadlessScreenHelper.h"
#include "mozilla/widget/ScreenManager.h"
-@@ -178,10 +179,8 @@
- // creating top-level windows. (At this point, a child process hasn't
- // received the list of registered chrome packages, so the
- // GetBrandShortName call would fail anyway.)
+@@ -159,13 +160,9 @@ nsresult nsAppShell::Init() {
+ // See https://bugzilla.gnome.org/show_bug.cgi?id=747634
+ //
+ // Only bother doing this for the parent process, since it's the one
+- // creating top-level windows. (At this point, a child process hasn't
+- // received the list of registered chrome packages, so the
+- // GetBrandShortName call would fail anyway.)
- nsAutoString brandName;
- mozilla::widget::WidgetUtils::GetBrandShortName(brandName);
- if (!brandName.IsEmpty()) {
- gdk_set_program_class(NS_ConvertUTF16toUTF8(brandName).get());
++ // creating top-level windows.
+ if (gAppData) {
+ gdk_set_program_class(gAppData->remotingName);
}
diff --git a/0002-Bug-1660901-Support-the-fstat-like-subset-of-fstatat.patch b/0002-Bug-1660901-Support-the-fstat-like-subset-of-fstatat.patch
new file mode 100644
index 000000000000..427dfcdc1e00
--- /dev/null
+++ b/0002-Bug-1660901-Support-the-fstat-like-subset-of-fstatat.patch
@@ -0,0 +1,46 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Jed Davis <jld@mozilla.com>
+Date: Fri, 28 Aug 2020 09:23:58 +0000
+Subject: [PATCH] Bug 1660901 - Support the fstat-like subset of fstatat in the
+ Linux sandbox policies. r=gcp
+
+Differential Revision: https://phabricator.services.mozilla.com/D88499
+---
+ security/sandbox/linux/SandboxFilter.cpp | 6 ++++++
+ security/sandbox/linux/broker/SandboxBrokerUtils.h | 2 ++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/security/sandbox/linux/SandboxFilter.cpp b/security/sandbox/linux/SandboxFilter.cpp
+index e522d61e065c..4087bdc07e01 100644
+--- a/security/sandbox/linux/SandboxFilter.cpp
++++ b/security/sandbox/linux/SandboxFilter.cpp
+@@ -243,6 +243,12 @@ class SandboxPolicyCommon : public SandboxPolicyBase {
+ auto path = reinterpret_cast<const char*>(aArgs.args[1]);
+ auto buf = reinterpret_cast<statstruct*>(aArgs.args[2]);
+ auto flags = static_cast<int>(aArgs.args[3]);
++
++ if (fd != AT_FDCWD && (flags & AT_EMPTY_PATH) != 0 &&
++ strcmp(path, "") == 0) {
++ return ConvertError(fstatsyscall(fd, buf));
++ }
++
+ if (fd != AT_FDCWD && path[0] != '/') {
+ SANDBOX_LOG_ERROR("unsupported fd-relative fstatat(%d, \"%s\", %p, %d)",
+ fd, path, buf, flags);
+diff --git a/security/sandbox/linux/broker/SandboxBrokerUtils.h b/security/sandbox/linux/broker/SandboxBrokerUtils.h
+index 85a006740c2c..db33b5028e77 100644
+--- a/security/sandbox/linux/broker/SandboxBrokerUtils.h
++++ b/security/sandbox/linux/broker/SandboxBrokerUtils.h
+@@ -19,10 +19,12 @@
+ typedef struct stat64 statstruct;
+ # define statsyscall stat64
+ # define lstatsyscall lstat64
++# define fstatsyscall fstat64
+ #elif defined(__NR_stat)
+ typedef struct stat statstruct;
+ # define statsyscall stat
+ # define lstatsyscall lstat
++# define fstatsyscall fstat
+ #else
+ # error Missing stat syscall include.
+ #endif
diff --git a/0003-Bug-1660901-ignore-AT_NO_AUTOMOUNT-in-fstatat-system.patch b/0003-Bug-1660901-ignore-AT_NO_AUTOMOUNT-in-fstatat-system.patch
new file mode 100644
index 000000000000..dd5a535359a0
--- /dev/null
+++ b/0003-Bug-1660901-ignore-AT_NO_AUTOMOUNT-in-fstatat-system.patch
@@ -0,0 +1,31 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Julien Cristau <jcristau@mozilla.com>
+Date: Sun, 6 Sep 2020 20:20:39 +0000
+Subject: [PATCH] Bug 1660901 - ignore AT_NO_AUTOMOUNT in fstatat system call.
+ r=jld
+
+Per the manpage "Both stat() and lstat() act as though AT_NO_AUTOMOUNT
+was set.", so don't bail if it's set in a call to fstatat.
+
+Differential Revision: https://phabricator.services.mozilla.com/D89121
+---
+ security/sandbox/linux/SandboxFilter.cpp | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/security/sandbox/linux/SandboxFilter.cpp b/security/sandbox/linux/SandboxFilter.cpp
+index 4087bdc07e01..c4f6c318ad1c 100644
+--- a/security/sandbox/linux/SandboxFilter.cpp
++++ b/security/sandbox/linux/SandboxFilter.cpp
+@@ -254,9 +254,10 @@ class SandboxPolicyCommon : public SandboxPolicyBase {
+ fd, path, buf, flags);
+ return BlockedSyscallTrap(aArgs, nullptr);
+ }
+- if ((flags & ~AT_SYMLINK_NOFOLLOW) != 0) {
++ if ((flags & ~(AT_SYMLINK_NOFOLLOW | AT_NO_AUTOMOUNT)) != 0) {
+ SANDBOX_LOG_ERROR("unsupported flags %d in fstatat(%d, \"%s\", %p, %d)",
+- (flags & ~AT_SYMLINK_NOFOLLOW), fd, path, buf, flags);
++ (flags & ~(AT_SYMLINK_NOFOLLOW | AT_NO_AUTOMOUNT)), fd,
++ path, buf, flags);
+ return BlockedSyscallTrap(aArgs, nullptr);
+ }
+ return (flags & AT_SYMLINK_NOFOLLOW) == 0 ? broker->Stat(path, buf)
diff --git a/PKGBUILD b/PKGBUILD
index 3f89dd5ef349..462881ec2b4b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -19,7 +19,7 @@ _pgo=true
_pkgname=firefox
pkgname=$_pkgname-kde-opensuse
-pkgver=80.0.1
+pkgver=81.0
pkgrel=1
pkgdesc="Standalone web browser from mozilla.org with OpenSUSE patch, integrate better with KDE"
arch=('i686' 'x86_64')
@@ -42,16 +42,17 @@ depends=('mozilla-common' 'libxt' 'mime-types'
)
makedepends=('unzip' 'zip' 'diffutils' 'yasm' 'mesa' 'imake'
- 'xorg-server-xvfb' 'libpulse' 'inetutils' 'autoconf2.13' 'rust'
- 'cargo' 'mercurial' 'llvm' 'clang' 'jack'
- 'gtk2' 'nodejs' 'cbindgen' 'nasm' 'python' 'python-psutil' 'xz')
+ 'xorg-server-xvfb' 'libpulse' 'inetutils' 'autoconf2.13'
+ 'cargo' 'mercurial' 'llvm' 'clang' 'rust' 'jack'
+ 'gtk2' 'nodejs' 'cbindgen' 'nasm' 'xz'
+ 'python' 'python-psutil' 'python-zstandard')
optdepends=('networkmanager: Location detection via available WiFi networks'
'speech-dispatcher: Text-to-Speech'
'pulseaudio: Audio support')
provides=("firefox=${pkgver}")
conflicts=('firefox')
-_patchrev=0d8818883a2a1d201d7eb40ca0094be91432d2a1
+_patchrev=e64141ffa905efdf657306eda2627c868b399852
options=('!emptydirs')
_patchurl=https://raw.githubusercontent.com/openSUSE/firefox-maintenance/$_patchrev
_repo=https://hg.mozilla.org/mozilla-unified
@@ -66,7 +67,6 @@ source=("hg+$_repo#tag=FIREFOX_${pkgver//./_}_RELEASE"
# Gecko/toolkit patchset
mozilla-kde-$_patchrev.patch::$_patchurl/mozilla-kde.patch
mozilla-nongnome-proxies-$_patchrev.patch::$_patchurl/mozilla-nongnome-proxies.patch
- mozilla-system-nspr-$_patchrev.patch::$_patchurl/mozilla-system-nspr.patch
unity-menubar.patch
add_missing_pgo_rule.patch
pgo_fix_missing_kdejs.patch
@@ -84,6 +84,12 @@ source=("hg+$_repo#tag=FIREFOX_${pkgver//./_}_RELEASE"
mozilla-1516803.patch
# Force disable elfhack to fix build errors
build-disable-elfhack.patch
+ # Fix MOZILLA1#1660901
+ # Support the fstat-like subset of fstatat in the Linux sandbox policies
+ 0002-Bug-1660901-Support-the-fstat-like-subset-of-fstatat.patch
+ 0003-Bug-1660901-ignore-AT_NO_AUTOMOUNT-in-fstatat-system.patch
+ # Revert patch from MOZILLA#1644409 to fix issue casused by this patch
+ mozilla-1644409.patch::https://hg.mozilla.org/mozilla-central/raw-rev/795c8762b16b
)
# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
@@ -122,14 +128,14 @@ prepare() {
patch -Np1 -i "$srcdir/firefox-kde-$_patchrev.patch"
patch -Np1 -i "$srcdir/firefox-branded-icons-$_patchrev.patch"
- # add globalmenu support
+ # Add globalmenu support
patch -Np1 -i "$srcdir/unity-menubar.patch"
patch -Np1 -i "$srcdir"/2000_system_harfbuzz_support.patch
patch -Np1 -i "$srcdir"/2001_system_graphite2_support.patch
patch -Np1 -i "$srcdir"/7002_system_av1_support.patch
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1530052
+ # Fix MOZILLA#1530052
patch -Np1 -i "$srcdir"/0001-Use-remoting-name-for-GDK-application-names.patch
# reenable system sqlite
@@ -140,11 +146,18 @@ prepare() {
# GCC LTO is enabled
patch -Np1 -i "$srcdir"/mozilla-1516803.patch
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1661096
- patch -Np1 -i "$srcdir/mozilla-system-nspr-$_patchrev.patch"
-
# Force disable elfhack to fix build errors
patch -Np1 -i "$srcdir"/build-disable-elfhack.patch
+
+ # https://bugs.archlinux.org/task/67978
+ # Fix MOZILLA#1660901
+ # Support the fstat-like subset of fstatat in the Linux sandbox policies
+ patch -p1 -i "$srcdir"/0002-Bug-1660901-Support-the-fstat-like-subset-of-fstatat.patch
+ patch -p1 -i "$srcdir"/0003-Bug-1660901-ignore-AT_NO_AUTOMOUNT-in-fstatat-system.patch
+
+ # Revert patch from MOZILLA#1644409 to fix issue casused by this patch
+ patch -R -p1 -i "$srcdir"/mozilla-1644409.patch
+
if [[ $_pgo ]] ; then
# add missing rule for pgo builds
@@ -166,6 +179,7 @@ build() {
export MOZBUILD_STATE_PATH="$srcdir/mozbuild"
export MOZ_APP_REMOTINGNAME=$pkgname
export CARGO_HOME="$srcdir"/.cargo
+ export MACH_USE_SYSTEM_PYTHON=1
export CC=gcc
export CXX=g++
@@ -250,17 +264,19 @@ md5sums=('SKIP'
'05bb69d25fb3572c618e3adf1ee7b670'
'c0f68250d27f208efcdee710207cd3e4'
'77c039d55aa155391db518afd638a0b9'
- 'cd69565c4ac2696d5245229974a296da'
+ '93fc217bcdc9d936727a1c3446e72650'
'0a5733b7a457a2786c2dd27626a1bf88'
- 'cd9d97a39bf001217a7a2f0973e64ecd'
- '20526c2f149f05cd2bcf29366f4af149'
+ '39cf2f916317bae3edb7133d681684bd'
'fe24f5ea463013bb7f1c12d12dce41b2'
'3c383d371d7f6ede5983a40310518715'
'd24681f9a46ae23689b2867f4ab6eaae'
'dbb578ee6ef93f0d28584d38904fac70'
'f867ae41a722630cc5567e2dcc51676d'
'1e473ebbf9e5d648e498c58dd6c789e6'
- 'e8585d1477f5f057603f38fcceec5c3f'
+ '7b479b606ce2580f786a021cc0c3c5a1'
'129f1d0a83a9034e49c8ff62f5e0013d'
'efcddfb6595b356b3faaf6b93313659e'
- 'aa9261c4d407cf809bf8275e6f2e52c7')
+ 'aa9261c4d407cf809bf8275e6f2e52c7'
+ 'ad9899e50a611d007ff17387deea6139'
+ '680ab9eee674476e1c10c998996a7f73'
+ '7c42a1e4928330d82409283e9af6422c')
diff --git a/unity-menubar.patch b/unity-menubar.patch
index da9d94036ce3..eb51ab374e51 100644
--- a/unity-menubar.patch
+++ b/unity-menubar.patch
@@ -319,7 +319,7 @@
+#endif /* __nsDbusmenu_h__ */
--- /dev/null
+++ b/widget/gtk/nsMenu.cpp
-@@ -0,0 +1,796 @@
+@@ -0,0 +1,795 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/* vim:expandtab:shiftwidth=4:tabstop=4:
+ */
@@ -334,7 +334,6 @@
+#include "mozilla/Assertions.h"
+#include "mozilla/ComputedStyleInlines.h"
+#include "mozilla/EventDispatcher.h"
-+#include "mozilla/GuardObjects.h"
+#include "mozilla/MouseEvents.h"
+#include "mozilla/PresShell.h"
+#include "mozilla/PresShellInlines.h"
@@ -3971,7 +3970,7 @@
+#endif /* __nsMenuSeparator_h__ */
--- /dev/null
+++ b/widget/gtk/nsNativeMenuDocListener.cpp
-@@ -0,0 +1,350 @@
+@@ -0,0 +1,348 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/* vim:expandtab:shiftwidth=4:tabstop=4:
+ */
@@ -4006,10 +4005,9 @@
+public:
+ DispatchHelper(nsNativeMenuDocListener *aListener,
+ nsIContent *aContent
-+ MOZ_GUARD_OBJECT_NOTIFIER_PARAM) :
++ ) :
+ mObserver(nullptr)
+ {
-+ MOZ_GUARD_OBJECT_NOTIFIER_INIT;
+ if (aContent == aListener->mLastSource) {
+ mObserver = aListener->mLastTarget;
+ } else {
@@ -4029,7 +4027,6 @@
+
+private:
+ nsNativeMenuChangeObserver *mObserver;
-+ MOZ_DECL_USE_GUARD_OBJECT_NOTIFIER
+};
+
+NS_IMPL_ISUPPORTS(nsNativeMenuDocListener, nsIMutationObserver)
@@ -4324,7 +4321,7 @@
+}
--- /dev/null
+++ b/widget/gtk/nsNativeMenuDocListener.h
-@@ -0,0 +1,157 @@
+@@ -0,0 +1,154 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/* vim:expandtab:shiftwidth=4:tabstop=4:
+ */
@@ -4336,7 +4333,6 @@
+#define __nsNativeMenuDocListener_h__
+
+#include "mozilla/Attributes.h"
-+#include "mozilla/GuardObjects.h"
+#include "mozilla/RefPtr.h"
+#include "mozilla/UniquePtr.h"
+#include "nsDataHashtable.h"
@@ -4391,9 +4387,8 @@
+ class MOZ_STACK_CLASS BlockUpdatesScope
+ {
+ public:
-+ BlockUpdatesScope(MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM)
++ BlockUpdatesScope()
+ {
-+ MOZ_GUARD_OBJECT_NOTIFIER_INIT;
+ nsNativeMenuDocListener::AddUpdateBlocker();
+ }
+
@@ -4403,7 +4398,6 @@
+ }
+
+ private:
-+ MOZ_DECL_USE_GUARD_OBJECT_NOTIFIER
+ };
+
+private: