Your message dated Wed, 28 Jan 2015 09:48:32 +0000
with message-id <[email protected]>
and subject line Bug#775571: fixed in mate-session-manager 1.8.1-7
has caused the Debian Bug report #775571,
regarding mate-session-manager: gnome-keyring integration broken (by patch from 
#775189)
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
775571: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=775571
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: mate-session-manager
Version: 1.8.1-6
Severity: normal
Tags: patch

Dear Maintainer,

The patch introduced by #775189 to allow users to disable gnome-keyring
integration has a logic issue and leads to only *one* of the components
to be initialized (in order, `smproxy`, then `keyring`).  This means
that with the default list of `['keyring', 'smproxy']`, only the
`smproxy` component will get initialized.

In practice it breaks the keyring, including gpg-agent and ssh-agent.

Attached is a patch that simplifies the code and makes its logic
correct: test *each* entry in the list and act accordingly.

Note: this patch may not be perfect as if there are duplicated entries
in the list the relevant component will be initialized twice, but this
didn't seem too dangerous.  If this is a real concern, it can easily be
fixed by adding a flag for each component and check it before
initializing it (and set if after, of course).

Regards,
Colomban

PS: the patch is a manual diff between two copies from
`apt-get sources` -- and thus is a patch against the previously patched
state.  I would gladly make a proper patch against the upstream source
using Git, but I couldn't figure out how this works with Debian stuff
like gbp.  If there is a quick and simple guide or alike, or if a patch
against direct upstream (where?) Git is ok, I can re-do it.

-- System Information:
Debian Release: 8.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages mate-session-manager depends on:
ii  dbus-x11                                     1.8.14-1
ii  dconf-gsettings-backend [gsettings-backend]  0.22.0-1
ii  libc6                                        2.19-13
ii  libdbus-1-3                                  1.8.14-1
ii  libdbus-glib-1-2                             0.102-1
ii  libgdk-pixbuf2.0-0                           2.31.1-2+b1
ii  libglib2.0-0                                 2.42.1-1
ii  libgtk2.0-0                                  2.24.25-1
ii  libice6                                      2:1.0.9-1+b1
ii  libsm6                                       2:1.2.2-1+b1
ii  libsystemd0                                  215-9
ii  libx11-6                                     2:1.6.2-3
ii  libxau6                                      1:1.0.8-1
ii  libxext6                                     2:1.3.3-1
ii  libxrender1                                  1:0.9.8-1+b1
ii  libxtst6                                     2:1.2.2-1+b1
ii  upower                                       0.99.1-3.1

Versions of packages mate-session-manager recommends:
ii  caja                  1.8.2-1
ii  marco                 1.8.2+dfsg1-4
ii  mate-panel            1.8.1+dfsg1-3
ii  mate-polkit           1.8.0+dfsg1-4
ii  mate-settings-daemon  1.8.2-1

mate-session-manager suggests no packages.

-- no debconf information
--- mate-session-manager-1.8.1/mate-session/msm-gnome.c	2015-01-17 15:08:00.000000000 +0100
+++ mate-session-manager-1.8.1.new/mate-session/msm-gnome.c	2015-01-17 14:48:37.553305616 +0100
@@ -237,8 +237,6 @@
 {
   GSettings* settings;
   gchar **array;
-  GList *startup = NULL;
-  gint i;
 
   if (gnome_compat_started == TRUE)
     return;
@@ -246,32 +244,26 @@
   settings = g_settings_new (GSM_SCHEMA);
   array = g_settings_get_strv (settings, GSM_GNOME_COMPAT_STARTUP_KEY);
   if (array) {
-    for (i = 0; array[i]; i++) {
-      startup = g_list_append (startup, g_strdup (array[i]));
-    }
-  }
-  g_strfreev (array);
-  g_object_unref (settings);
+    guint i;
 
-  if (startup != NULL) {
-    if (g_list_find_custom (startup, "smproxy", (GCompareFunc) strcmp) != NULL) {
-      g_debug ("MsmGnome: starting smproxy");
-      msm_compat_gnome_smproxy_startup ();
-      gnome_compat_started = TRUE;
-    } else if (g_list_find_custom (startup, "keyring", (GCompareFunc) strcmp) != NULL) {
-      g_debug ("MsmGnome: starting keyring");
-      gnome_keyring_daemon_startup ();
-      gnome_compat_started = TRUE;
-    } else {
-      g_debug ("MsmGnome: unknown component, ignoring");
+    for (i = 0; array[i]; i++) {
+      if (strcmp (array[i], "smproxy") == 0) {
+        g_debug ("MsmGnome: starting smproxy");
+        msm_compat_gnome_smproxy_startup ();
+        gnome_compat_started = TRUE;
+      } else if (strcmp (array[i], "keyring") == 0) {
+        g_debug ("MsmGnome: starting keyring");
+        gnome_keyring_daemon_startup ();
+        gnome_compat_started = TRUE;
+      } else {
+        g_debug ("MsmGnome: ignoring unknown component \"%s\"", array[i]);
+      }
     }
-
-  g_list_foreach (startup, (GFunc) g_free, NULL);
-  g_list_free (startup);
-
+    g_strfreev (array);
   } else {
     g_debug ("MsmGnome: No components found to start");
   }
+  g_object_unref (settings);
 }
 
 

--- End Message ---
--- Begin Message ---
Source: mate-session-manager
Source-Version: 1.8.1-7

We believe that the bug you reported is fixed in the latest version of
mate-session-manager, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Mike Gabriel <[email protected]> (supplier of updated mate-session-manager 
package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Wed, 21 Jan 2015 14:11:56 +0100
Source: mate-session-manager
Binary: mate-session-manager mate-session-manager-dbg
Architecture: source amd64
Version: 1.8.1-7
Distribution: unstable
Urgency: medium
Maintainer: MATE Packaging Team <[email protected]>
Changed-By: Mike Gabriel <[email protected]>
Description:
 mate-session-manager - Session manager of the MATE desktop environment
 mate-session-manager-dbg - Session manager of the MATE desktop environment 
(debug symbols)
Closes: 775571 775905
Changes:
 mate-session-manager (1.8.1-7) unstable; urgency=medium
 .
   * debian/patches:
     + Add 0002_msmgnome-Allow-users-to-disable-one-or-both-compatib.patch.
       Follow-up patch for previously added dconf switch that handles
       gnome-keyring and smproxy compat mode (see: #775198). (Closes:
       #775571).
     + Add 0003_set-XDG-CURRENT-DESKTOP-if-empty.patch. Make sure that
       XDG_CURRENT_DESKTOP gets set if not already set by DM. (Closes:
       #775905).
Checksums-Sha1:
 0d5e355cb1b556917544f565cc029be0fa3fa6b8 2526 mate-session-manager_1.8.1-7.dsc
 000dfdaa1b0d72196985865e9461ed91a309c6c1 7512 
mate-session-manager_1.8.1-7.debian.tar.xz
 f7cbef2c92063a0aa106aca79c9f34ed1b9a0fc9 262366 
mate-session-manager_1.8.1-7_amd64.deb
 579b893d1b7186e6c2043b7ffedc9a6b1168b38b 407316 
mate-session-manager-dbg_1.8.1-7_amd64.deb
Checksums-Sha256:
 daa1274c52db8d36b014ec93a119facaee11268c793876bcc237398ed9a0b387 2526 
mate-session-manager_1.8.1-7.dsc
 3cb990fe8c0a8ba3b5bad79a2a91706a16d3ed4c489ae3b797cc999be5deb207 7512 
mate-session-manager_1.8.1-7.debian.tar.xz
 91c3b289154a4ea35641f59ec53a3c309469c725c2c9185954f6bce58ddfecca 262366 
mate-session-manager_1.8.1-7_amd64.deb
 ecb475ec6f35a1a6133fef7e1f3df801115f1e6c13fbc12c0ae8b3287185d19e 407316 
mate-session-manager-dbg_1.8.1-7_amd64.deb
Files:
 9e1ff30f31df4ad3a7ef212b5395915b 2526 x11 optional 
mate-session-manager_1.8.1-7.dsc
 3fb1ec30f84dc338e1ae90884202e6a9 7512 x11 optional 
mate-session-manager_1.8.1-7.debian.tar.xz
 191c5192cafe4c7df1a68f5a2a7d57ce 262366 x11 optional 
mate-session-manager_1.8.1-7_amd64.deb
 be3f4599be1f97e46bfe32e27678aec2 407316 debug extra 
mate-session-manager-dbg_1.8.1-7_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBCAAGBQJUyK7/AAoJEJr0azAldxsxzmkQALeTb3MFiKdtgymF0YpTom4X
V77/zVrzwQyk/xz+XqT7x/oSpbGe8vKrXMTy3mxHZcHXP6mLUdhvVswsaHDG/Mv1
Uq1foD1s1F+hUbs3KzIEwE2YQOP7nq8KEsIMrmC/awIkMq3g0Nz2UHTi1GuQ0aB3
fUPDTgQqpVXj18LymZI5l3yom49aX2k8X0da5BGaHb+xOj5BoiC+fh5OcQ/oaiTJ
gWRLLMHTiAE6HSEWXNRHb1dEqyBH3sKP3ZBU3nMXNNo/eZuOlisY3J2DlGou4csd
wzmqcbTc67atEhmmiJNZILZe9OTkcnXM6BT+yUfwXOOeerluAvauqP92a+z1dWmU
Q6FrZkFtSzON0OQ2AyIstsyG4oRtOSB5s3rE9016HVxpsEGghAyxJUvcQzN2OlCJ
8q2bgp8g7xrpBOHYbZ1TwDHCMOTSdN0/57vvZ5P5Ysy67B4wlRuZlx3NtaSUqGBR
ExlEFFwS/NXxygbs3xu7uDeWN6ANHxXBA1Xsy4Ge/yE3t5panDf6OaSRsz8gXZpz
FDlMwWpkvi+BliK8WN1gbK0QIVhtr8bRg4aQTOvzctDUOaYnHAF1WB5o1hQSrTSf
a4eSaIkA0r+R5Ng4TZDqsb1pPYvYl6W+UgeHrAxDOvKeFFAvOdIGvTKShrRbDI01
6Hhlwiz4/CRManwHI5Vj
=xpWy
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to