[gnome-shell] dbusServices: Allow replacement
- From: Marge Bot <marge-bot src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] dbusServices: Allow replacement
- Date: Mon, 7 Feb 2022 18:56:23 +0000 (UTC)
commit 8d8eba000fa54865ba2635328b6aed8a151686a2
Author: Florian Müllner <fmuellner gnome org>
Date: Thu Feb 3 01:57:46 2022 +0100
dbusServices: Allow replacement
The REPLACE flag we currently pass is useless, as replacing the service
is disallowed when not started with the ALLOW_REPLACEMENT flag.
Fix this by adopting a more standard pattern where replacement is always
allowed, but only actually requested when `--replace` is passed on the
command line.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2152>
js/dbusServices/dbusService.js | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
---
diff --git a/js/dbusServices/dbusService.js b/js/dbusServices/dbusService.js
index 71b1e35d7e..3e2fde06af 100644
--- a/js/dbusServices/dbusService.js
+++ b/js/dbusServices/dbusService.js
@@ -6,6 +6,8 @@ const Signals = imports.signals;
const IDLE_SHUTDOWN_TIME = 2; // s
+const { programArgs } = imports.system;
+
var ServiceImplementation = class {
constructor(info, objectPath) {
this._objectPath = objectPath;
@@ -167,9 +169,13 @@ var DBusService = class {
this._service.register();
+ let flags = Gio.BusNameOwnerFlags.ALLOW_REPLACEMENT;
+ if (programArgs.includes('--replace'))
+ flags |= Gio.BusNameOwnerFlags.REPLACE;
+
Gio.DBus.own_name(Gio.BusType.SESSION,
this._name,
- Gio.BusNameOwnerFlags.REPLACE,
+ flags,
() => this._service.export(),
null,
() => this._loop.quit());
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]