[gnome-shell] screenshot: Unrestrict PickColor
- From: Marge Bot <marge-bot src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] screenshot: Unrestrict PickColor
- Date: Wed, 6 Oct 2021 17:38:22 +0000 (UTC)
commit a3dcdaae30bdcbadec7ba3fa31c9eb0bb2a4c8c2
Author: Florian Müllner <fmuellner gnome org>
Date: Sat Sep 25 14:15:32 2021 +0200
screenshot: Unrestrict PickColor
Commit dd2cd6286cd3 restricted callers of the screenshot methods to
portal implementations, gnome-settings-daemon and gnome-screenshot.
That restriction does make sense for the actual screenshot methods,
but `PickColor` is actually used by GTK in its color picker (and
therefore may be called from arbitrary applications).
Fix this by unrestricting access to `PickColor` again. Considering that
the method is always interactive, it's not very privacy/security-sensitive
anyway.
https://gitlab.gnome.org/GNOME/gtk/-/issues/4283
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1990>
js/ui/screenshot.js | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
---
diff --git a/js/ui/screenshot.js b/js/ui/screenshot.js
index bf537b7d6d..ae1156f477 100644
--- a/js/ui/screenshot.js
+++ b/js/ui/screenshot.js
@@ -37,7 +37,7 @@ var ScreenshotService = class {
Gio.DBus.session.own_name('org.gnome.Shell.Screenshot', Gio.BusNameOwnerFlags.REPLACE, null, null);
}
- _createScreenshot(invocation, needsDisk = true) {
+ _createScreenshot(invocation, needsDisk = true, restrictCallers = true) {
let lockedDown = false;
if (needsDisk)
lockedDown = this._lockdownSettings.get_boolean('disable-save-to-disk');
@@ -53,7 +53,7 @@ var ScreenshotService = class {
Gio.IOErrorEnum, Gio.IOErrorEnum.PERMISSION_DENIED,
'Saving to disk is disabled');
return null;
- } else {
+ } else if (restrictCallers) {
try {
this._senderChecker.checkInvocation(invocation);
} catch (e) {
@@ -311,7 +311,7 @@ var ScreenshotService = class {
}
async PickColorAsync(params, invocation) {
- const screenshot = this._createScreenshot(invocation, false);
+ const screenshot = this._createScreenshot(invocation, false, false);
if (!screenshot)
return;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]