Accepting request 359562 from home:Zaitor

Subbing this one as we forgot to follow up in the bug where someone had a branch.
Lets get it in and forwarded before we start pushing GN to GF as we don't know how long that might take to get in shape.

OBS-URL: https://build.opensuse.org/request/show/359562
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gnome-shell?expand=0&rev=247
This commit is contained in:
Dominique Leuenberger 2016-02-16 11:41:09 +00:00 committed by Git OBS Bridge
parent 9a952ba91e
commit 60f2f5ff10
5 changed files with 151 additions and 1 deletions

View File

@ -0,0 +1,32 @@
From 021cecbce289f1d9c68a156d5b8dd204a73bc715 Mon Sep 17 00:00:00 2001
From: Christophe Fergeau <cfergeau@redhat.com>
Date: Sun, 20 Dec 2015 20:51:52 +0100
Subject: NetworkAgent: Fix double-unref in get_secrets_keyring_cb()
In get_secrets_keyring_cb, we own a ref on the 'attributes' hash table
from secret_item_get_attributes), and a ref on the 'secret' object (from
secret_item_get_secret(), but in the SHELL_KEYRING_SK_TAG case, we unref
these once before breaking out of the loop, and the second time after
breaking out of the loop.
https://bugzilla.gnome.org/show_bug.cgi?id=759708
---
src/shell-network-agent.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/src/shell-network-agent.c b/src/shell-network-agent.c
index 5d99167..da0f7e5 100644
--- a/src/shell-network-agent.c
+++ b/src/shell-network-agent.c
@@ -314,8 +314,6 @@ get_secrets_keyring_cb (GObject *source,
secrets_found = TRUE;
- g_hash_table_unref (attributes);
- secret_value_unref (secret);
break;
}
}
--
cgit v0.12

View File

@ -0,0 +1,35 @@
From f5d9d188a72e91ab40023dbbca6820a52a8262f6 Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanzaro@igalia.com>
Date: Thu, 7 Jan 2016 16:03:41 -0600
Subject: authPrompt: Do not allow bypassing disabled Sign In button
The Next and Sign In buttons are disabled when the username/password
field is empty. However, the user can still bypass this button by
pressing the enter key, leading to some odd glitches with the log in
for 'Not Listed?' users.
This is easy to fix by simply not progressing to the next screen when
the button is disabled.
https://bugzilla.gnome.org/show_bug.cgi?id=746180
---
js/gdm/authPrompt.js | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/js/gdm/authPrompt.js b/js/gdm/authPrompt.js
index 88ed2a6..50c66fd 100644
--- a/js/gdm/authPrompt.js
+++ b/js/gdm/authPrompt.js
@@ -189,7 +189,8 @@ const AuthPrompt = new Lang.Class({
this._updateNextButtonSensitivity(this._entry.text.length > 0);
}));
this._entry.clutter_text.connect('activate', Lang.bind(this, function() {
- this.emit('next');
+ if (this.nextButton.reactive)
+ this.emit('next');
}));
},
--
cgit v0.11.2

View File

@ -0,0 +1,63 @@
From 4562a431ad976a3e0df38889d48bb7898f91c672 Mon Sep 17 00:00:00 2001
From: Lubomir Rintel <lkundrak@v3.sk>
Date: Tue, 26 Jan 2016 17:31:34 +0100
Subject: NetworkAgent: correctly identify the VPN secret requests
The non-interactive requests for 'vpn' settings are forwarded to the UI because
it is able to talk to the auth helpers. However, the VPN requests are identified
by the connection type instead of setting type. That is incorrect and the UI
is not prepared to handle such requests; tries to construct a dialog and fails
miserably:
Gjs-Message: JS LOG: Invalid connection type: vpn
(gnome-shell:13133): Gjs-WARNING **: JS ERROR: Error: No property 'text' in property list (or its value was undefined)
NetworkSecretDialog<._init@resource:///org/gnome/shell/ui/components/networkAgent.js:60
wrapper@resource:///org/gnome/gjs/modules/lang.js:169
_Base.prototype._construct@resource:///org/gnome/gjs/modules/lang.js:110
Class.prototype._construct/newClass@resource:///org/gnome/gjs/modules/lang.js:204
NetworkAgent<._handleRequest@resource:///org/gnome/shell/ui/components/networkAgent.js:724
wrapper@resource:///org/gnome/gjs/modules/lang.js:169
NetworkAgent<._newRequest@resource:///org/gnome/shell/ui/components/networkAgent.js:715
wrapper@resource:///org/gnome/gjs/modules/lang.js:169
https://bugzilla.gnome.org/show_bug.cgi?id=760999
---
src/shell-network-agent.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/src/shell-network-agent.c b/src/shell-network-agent.c
index c6f4b79..8e8c548 100644
--- a/src/shell-network-agent.c
+++ b/src/shell-network-agent.c
@@ -366,8 +366,6 @@ shell_network_agent_get_secrets (NMSecretAgent *agent,
{
ShellNetworkAgent *self = SHELL_NETWORK_AGENT (agent);
ShellAgentRequest *request;
- NMSettingConnection *setting_connection;
- const char *connection_type;
GHashTable *attributes;
char *request_id;
@@ -381,9 +379,6 @@ shell_network_agent_get_secrets (NMSecretAgent *agent,
shell_agent_request_cancel (request);
}
- setting_connection = nm_connection_get_setting_connection (connection);
- connection_type = nm_setting_connection_get_connection_type (setting_connection);
-
request = g_slice_new (ShellAgentRequest);
request->self = g_object_ref (self);
request->cancellable = g_cancellable_new ();
@@ -393,7 +388,7 @@ shell_network_agent_get_secrets (NMSecretAgent *agent,
request->flags = flags;
request->callback = callback;
request->callback_data = callback_data;
- request->is_vpn = !strcmp(connection_type, NM_SETTING_VPN_SETTING_NAME);
+ request->is_vpn = !strcmp(setting_name, NM_SETTING_VPN_SETTING_NAME);
request->entries = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, gvalue_destroy_notify);
if (request->is_vpn)
--
cgit v0.11.2

View File

@ -1,3 +1,14 @@
-------------------------------------------------------------------
Mon Feb 1 13:28:18 UTC 2016 - zaitor@opensuse.org
- Add gnome-shell-Fix-double-unref.patch: NetworkAgent: Fix
double-unref in get_secrets_keyring_cb() (bgo#759708).
- Add gnome-shell-correctly-ident-VPN-secret-req.patch:
NetworkAgent: correctly identify the VPN secret requests.
(bgo#760999).
- Add gnome-shell-authprompt-bypass-disabled.patch: Do not allow
bypassing disabled Sign In button (bgo#746180).
-------------------------------------------------------------------
Tue Dec 29 11:31:44 UTC 2015 - zaitor@opensuse.org

View File

@ -1,7 +1,7 @@
#
# spec file for package gnome-shell
#
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -30,6 +30,12 @@ Patch1: gnome-shell-private-connection.patch
Patch2: gnome-shell-logindialog-fixes.patch
# PATCH-FIX-UPSTREAM gnome-shell-alt-tab-hdpi-fixes.patch zaitor@opensuse.org -- Fix tiny previews in alt-tab when using hidpi screens.
Patch3: gnome-shell-alt-tab-hdpi-fixes.patch
# PATCH-FIX-UPSTREAM gnome-shell-authprompt-bypass-disabled.patch bgo#746180 zaitor@opensuse.org -- Do not allow bypassing disabled Sign In button
Patch4: gnome-shell-authprompt-bypass-disabled.patch
# PATCH-FIX-UPSTREAM gnome-shell-correctly-ident-VPN-secret-req.patch bgo#760999 zaitor@opensuse.org -- NetworkAgent: correctly identify the VPN secret requests.
Patch5: gnome-shell-correctly-ident-VPN-secret-req.patch
# PATCH-FIX-UPSTREAM gnome-shell-Fix-double-unref.patch bgo#760924 zaitor@opensuse.org -- NetworkAgent: Fix double-unref in get_secrets_keyring_cb()
Patch6: gnome-shell-Fix-double-unref.patch
BuildRequires: docbook-xsl-stylesheets
BuildRequires: gcc-c++
BuildRequires: intltool
@ -158,6 +164,9 @@ into GNOME Shell calendar.
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
translation-update-upstream
%build