diff -Nru gdm3-3.28.0/aclocal.m4 gdm3-3.28.2/aclocal.m4 --- gdm3-3.28.0/aclocal.m4 2018-03-13 14:01:41.000000000 +0000 +++ gdm3-3.28.2/aclocal.m4 2018-05-17 14:13:24.000000000 +0000 @@ -20,6 +20,9 @@ If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) +# Increment this whenever this file is changed. +#serial 1 + dnl GLIB_GSETTINGS dnl Defines GSETTINGS_SCHEMAS_INSTALL which controls whether dnl the schema should be compiled @@ -720,8 +723,8 @@ xmlpath="$$lc:$(srcdir)/$$lc"; \ fi; \ for page in $(HELP_FILES); do \ - echo "$(XMLLINT) --noout --noent --path $$xmlpath --xinclude $$d$$lc/$$page"; \ - $(XMLLINT) --noout --noent --path "$$xmlpath" --xinclude "$$d$$lc/$$page"; \ + echo "$(XMLLINT) --nonet --noout --noent --path $$xmlpath --xinclude $$d$$lc/$$page"; \ + $(XMLLINT) --nonet --noout --noent --path "$$xmlpath" --xinclude "$$d$$lc/$$page"; \ done; \ done diff -Nru gdm3-3.28.0/compile gdm3-3.28.2/compile --- gdm3-3.28.0/compile 2018-03-13 14:01:44.000000000 +0000 +++ gdm3-3.28.2/compile 2018-05-17 14:13:28.000000000 +0000 @@ -1,4 +1,4 @@ -#! /bin/sh +#!/bin/sh # Wrapper for compilers which do not understand '-c -o'. scriptversion=2016-01-11.22; # UTC diff -Nru gdm3-3.28.0/config.guess gdm3-3.28.2/config.guess --- gdm3-3.28.0/config.guess 2018-03-13 14:01:44.000000000 +0000 +++ gdm3-3.28.2/config.guess 2018-05-17 14:13:28.000000000 +0000 @@ -1,4 +1,4 @@ -#! /bin/sh +#!/bin/sh # Attempt to guess a canonical system name. # Copyright 1992-2017 Free Software Foundation, Inc. diff -Nru gdm3-3.28.0/config.sub gdm3-3.28.2/config.sub --- gdm3-3.28.0/config.sub 2018-03-13 14:01:44.000000000 +0000 +++ gdm3-3.28.2/config.sub 2018-05-17 14:13:28.000000000 +0000 @@ -1,4 +1,4 @@ -#! /bin/sh +#!/bin/sh # Configuration validation subroutine script. # Copyright 1992-2017 Free Software Foundation, Inc. diff -Nru gdm3-3.28.0/configure gdm3-3.28.2/configure --- gdm3-3.28.0/configure 2018-03-13 14:01:43.000000000 +0000 +++ gdm3-3.28.2/configure 2018-05-17 14:13:26.000000000 +0000 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for gdm 3.28.0. +# Generated by GNU Autoconf 2.69 for gdm 3.28.2. # # Report bugs to . # @@ -591,8 +591,8 @@ # Identity of this package. PACKAGE_NAME='gdm' PACKAGE_TARNAME='gdm' -PACKAGE_VERSION='3.28.0' -PACKAGE_STRING='gdm 3.28.0' +PACKAGE_VERSION='3.28.2' +PACKAGE_STRING='gdm 3.28.2' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=gdm' PACKAGE_URL='' @@ -1608,7 +1608,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures gdm 3.28.0 to adapt to many kinds of systems. +\`configure' configures gdm 3.28.2 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1682,7 +1682,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of gdm 3.28.0:";; + short | recursive ) echo "Configuration of gdm 3.28.2:";; esac cat <<\_ACEOF @@ -1939,7 +1939,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -gdm configure 3.28.0 +gdm configure 3.28.2 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2529,7 +2529,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by gdm $as_me 3.28.0, which was +It was created by gdm $as_me 3.28.2, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3395,7 +3395,7 @@ # Define the identity of the package. PACKAGE='gdm' - VERSION='3.28.0' + VERSION='3.28.2' cat >>confdefs.h <<_ACEOF @@ -17014,8 +17014,8 @@ xmlpath="$$lc:$(srcdir)/$$lc"; \ fi; \ for page in $(HELP_FILES); do \ - echo "$(XMLLINT) --noout --noent --path $$xmlpath --xinclude $$d$$lc/$$page"; \ - $(XMLLINT) --noout --noent --path "$$xmlpath" --xinclude "$$d$$lc/$$page"; \ + echo "$(XMLLINT) --nonet --noout --noent --path $$xmlpath --xinclude $$d$$lc/$$page"; \ + $(XMLLINT) --nonet --noout --noent --path "$$xmlpath" --xinclude "$$d$$lc/$$page"; \ done; \ done @@ -25534,7 +25534,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by gdm $as_me 3.28.0, which was +This file was extended by gdm $as_me 3.28.2, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -25600,7 +25600,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -gdm config.status 3.28.0 +gdm config.status 3.28.2 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -Nru gdm3-3.28.0/configure.ac gdm3-3.28.2/configure.ac --- gdm3-3.28.0/configure.ac 2018-03-13 14:00:56.000000000 +0000 +++ gdm3-3.28.2/configure.ac 2018-05-17 14:12:49.000000000 +0000 @@ -1,7 +1,7 @@ AC_PREREQ([2.60]) AC_INIT([gdm], - [3.28.0], + [3.28.2], [http://bugzilla.gnome.org/enter_bug.cgi?product=gdm]) AC_CONFIG_SRCDIR([daemon/gdm-manager.c]) diff -Nru gdm3-3.28.0/daemon/gdm-manager.c gdm3-3.28.2/daemon/gdm-manager.c --- gdm3-3.28.0/daemon/gdm-manager.c 2018-02-19 18:16:32.000000000 +0000 +++ gdm3-3.28.2/daemon/gdm-manager.c 2018-05-16 18:03:38.000000000 +0000 @@ -2510,6 +2510,13 @@ #ifdef HAVE_LIBXDMCP /* Accept remote connections */ if (manager->priv->xdmcp_enabled) { +#ifdef WITH_PLYMOUTH + /* Quit plymouth if xdmcp is the only display */ + if (!manager->priv->show_local_greeter && manager->priv->plymouth_is_running) { + plymouth_quit_with_transition (); + manager->priv->plymouth_is_running = FALSE; + } +#endif if (manager->priv->xdmcp_factory != NULL) { g_debug ("GdmManager: Accepting XDMCP connections..."); gdm_display_factory_start (GDM_DISPLAY_FACTORY (manager->priv->xdmcp_factory)); diff -Nru gdm3-3.28.0/daemon/gdm-manager-glue.c gdm3-3.28.2/daemon/gdm-manager-glue.c --- gdm3-3.28.0/daemon/gdm-manager-glue.c 2018-02-20 19:46:41.000000000 +0000 +++ gdm3-3.28.2/daemon/gdm-manager-glue.c 2018-05-16 20:00:43.000000000 +0000 @@ -1,7 +1,8 @@ /* - * Generated by gdbus-codegen 2.54.3. DO NOT EDIT. + * Generated by gdbus-codegen 2.56.1. DO NOT EDIT. * - * The license of this code is the same as for the source it was derived from. + * The license of this code is the same as for the D-Bus interface description + * it was derived from. */ #ifdef HAVE_CONFIG_H @@ -326,7 +327,7 @@ /** * gdm_dbus_manager_override_properties: - * @klass: The class structure for a #GObject-derived class. + * @klass: The class structure for a #GObject derived class. * @property_id_begin: The property id to assign to the first overridden property. * * Overrides all #GObject properties in the #GdmDBusManager interface for a concrete class. @@ -502,7 +503,7 @@ * gdm_dbus_manager_call_register_display: * @proxy: A #GdmDBusManagerProxy. * @arg_details: Argument to pass with the method invocation. - * @cancellable: (allow-none): A #GCancellable or %NULL. + * @cancellable: (nullable): A #GCancellable or %NULL. * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. * @user_data: User data to pass to @callback. * @@ -562,7 +563,7 @@ * gdm_dbus_manager_call_register_display_sync: * @proxy: A #GdmDBusManagerProxy. * @arg_details: Argument to pass with the method invocation. - * @cancellable: (allow-none): A #GCancellable or %NULL. + * @cancellable: (nullable): A #GCancellable or %NULL. * @error: Return location for error or %NULL. * * Synchronously invokes the RegisterDisplay() D-Bus method on @proxy. The calling thread is blocked until a reply is received. @@ -599,7 +600,7 @@ /** * gdm_dbus_manager_call_open_session: * @proxy: A #GdmDBusManagerProxy. - * @cancellable: (allow-none): A #GCancellable or %NULL. + * @cancellable: (nullable): A #GCancellable or %NULL. * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. * @user_data: User data to pass to @callback. * @@ -660,7 +661,7 @@ * gdm_dbus_manager_call_open_session_sync: * @proxy: A #GdmDBusManagerProxy. * @out_address: (out): Return location for return parameter or %NULL to ignore. - * @cancellable: (allow-none): A #GCancellable or %NULL. + * @cancellable: (nullable): A #GCancellable or %NULL. * @error: Return location for error or %NULL. * * Synchronously invokes the OpenSession() D-Bus method on @proxy. The calling thread is blocked until a reply is received. @@ -698,7 +699,7 @@ * gdm_dbus_manager_call_open_reauthentication_channel: * @proxy: A #GdmDBusManagerProxy. * @arg_username: Argument to pass with the method invocation. - * @cancellable: (allow-none): A #GCancellable or %NULL. + * @cancellable: (nullable): A #GCancellable or %NULL. * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. * @user_data: User data to pass to @callback. * @@ -762,7 +763,7 @@ * @proxy: A #GdmDBusManagerProxy. * @arg_username: Argument to pass with the method invocation. * @out_address: (out): Return location for return parameter or %NULL to ignore. - * @cancellable: (allow-none): A #GCancellable or %NULL. + * @cancellable: (nullable): A #GCancellable or %NULL. * @error: Return location for error or %NULL. * * Synchronously invokes the OpenReauthenticationChannel() D-Bus method on @proxy. The calling thread is blocked until a reply is received. @@ -1094,9 +1095,9 @@ * gdm_dbus_manager_proxy_new: * @connection: A #GDBusConnection. * @flags: Flags from the #GDBusProxyFlags enumeration. - * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. + * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. * @object_path: An object path. - * @cancellable: (allow-none): A #GCancellable or %NULL. + * @cancellable: (nullable): A #GCancellable or %NULL. * @callback: A #GAsyncReadyCallback to call when the request is satisfied. * @user_data: User data to pass to @callback. * @@ -1149,9 +1150,9 @@ * gdm_dbus_manager_proxy_new_sync: * @connection: A #GDBusConnection. * @flags: Flags from the #GDBusProxyFlags enumeration. - * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. + * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. * @object_path: An object path. - * @cancellable: (allow-none): A #GCancellable or %NULL. + * @cancellable: (nullable): A #GCancellable or %NULL. * @error: Return location for error or %NULL * * Synchronously creates a proxy for the D-Bus interface org.gnome.DisplayManager.Manager. See g_dbus_proxy_new_sync() for more details. @@ -1186,7 +1187,7 @@ * @flags: Flags from the #GDBusProxyFlags enumeration. * @name: A bus name (well-known or unique). * @object_path: An object path. - * @cancellable: (allow-none): A #GCancellable or %NULL. + * @cancellable: (nullable): A #GCancellable or %NULL. * @callback: A #GAsyncReadyCallback to call when the request is satisfied. * @user_data: User data to pass to @callback. * @@ -1241,7 +1242,7 @@ * @flags: Flags from the #GDBusProxyFlags enumeration. * @name: A bus name (well-known or unique). * @object_path: An object path. - * @cancellable: (allow-none): A #GCancellable or %NULL. + * @cancellable: (nullable): A #GCancellable or %NULL. * @error: Return location for error or %NULL * * Like gdm_dbus_manager_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. diff -Nru gdm3-3.28.0/daemon/gdm-manager-glue.h gdm3-3.28.2/daemon/gdm-manager-glue.h --- gdm3-3.28.0/daemon/gdm-manager-glue.h 2018-02-20 19:46:41.000000000 +0000 +++ gdm3-3.28.2/daemon/gdm-manager-glue.h 2018-05-16 20:00:43.000000000 +0000 @@ -1,7 +1,8 @@ /* - * Generated by gdbus-codegen 2.54.3. DO NOT EDIT. + * Generated by gdbus-codegen 2.56.1. DO NOT EDIT. * - * The license of this code is the same as for the source it was derived from. + * The license of this code is the same as for the D-Bus interface description + * it was derived from. */ #ifndef __GDM_MANAGER_GLUE_H__ diff -Nru gdm3-3.28.0/daemon/main.c gdm3-3.28.2/daemon/main.c --- gdm3-3.28.0/daemon/main.c 2018-01-29 15:11:04.000000000 +0000 +++ gdm3-3.28.2/daemon/main.c 2018-05-17 14:10:28.000000000 +0000 @@ -329,7 +329,6 @@ context = g_option_context_new (_("GNOME Display Manager")); g_option_context_add_main_entries (context, entries, NULL); - g_option_context_set_ignore_unknown_options (context, TRUE); error = NULL; res = g_option_context_parse (context, &argc, &argv, &error); diff -Nru gdm3-3.28.0/debian/changelog gdm3-3.28.2/debian/changelog --- gdm3-3.28.0/debian/changelog 2018-05-17 10:55:59.000000000 +0000 +++ gdm3-3.28.2/debian/changelog 2018-05-29 12:23:25.000000000 +0000 @@ -1,3 +1,17 @@ +gdm3 (3.28.2-0ubuntu1.1) bionic; urgency=medium + + * debian/gbp.conf: Add with 'bionic' configuration. + * debian/control{,.in}: Update Vcs-* for git. + * New upstream release (LP: #1773968): + - Reference counting fixes for GdmClient (LP: #1766137) + - ensure plymouth is quit properly even when local greeter is disabled + - make sure GDM doesn't hang when called with unknown command line arguments + * debian/patches/0001-libgdm-Don-t-unref-a-connection-that-s-in-use.patch, + debian/patches/0002-libgdm-add-weak-pointer-for-connection-object.patch: + Drop, included in this release. + + -- Iain Lane Tue, 29 May 2018 13:23:25 +0100 + gdm3 (3.28.0-0ubuntu1.1) bionic; urgency=medium * debian/patches/0001-libgdm-Don-t-unref-a-connection-that-s-in-use.patch, diff -Nru gdm3-3.28.0/debian/control gdm3-3.28.2/debian/control --- gdm3-3.28.0/debian/control 2018-05-17 10:55:59.000000000 +0000 +++ gdm3-3.28.2/debian/control 2018-05-29 12:23:25.000000000 +0000 @@ -47,7 +47,8 @@ libsystemd-dev [linux-any], xserver-xorg-dev Standards-Version: 4.1.1 -Vcs-Bzr: https://code.launchpad.net/~ubuntu-desktop/gdm/bionic +Vcs-Browser: https://code.launchpad.net/~ubuntu-desktop/ubuntu/+source/gdm3/+git/gdm3/+ref/ubuntu/bionic +Vcs-Git: https://git.launchpad.net/~ubuntu-desktop/ubuntu/+source/gdm3 -b ubuntu/bionic Package: gdm3 Architecture: linux-any diff -Nru gdm3-3.28.0/debian/control.in gdm3-3.28.2/debian/control.in --- gdm3-3.28.0/debian/control.in 2018-05-17 10:55:59.000000000 +0000 +++ gdm3-3.28.2/debian/control.in 2018-05-29 12:23:25.000000000 +0000 @@ -43,7 +43,8 @@ libsystemd-dev [linux-any], xserver-xorg-dev Standards-Version: 4.1.1 -Vcs-Bzr: https://code.launchpad.net/~ubuntu-desktop/gdm/bionic +Vcs-Browser: https://code.launchpad.net/~ubuntu-desktop/ubuntu/+source/gdm3/+git/gdm3/+ref/ubuntu/bionic +Vcs-Git: https://git.launchpad.net/~ubuntu-desktop/ubuntu/+source/gdm3 -b ubuntu/bionic Package: gdm3 Architecture: linux-any diff -Nru gdm3-3.28.0/debian/gbp.conf gdm3-3.28.2/debian/gbp.conf --- gdm3-3.28.0/debian/gbp.conf 1970-01-01 00:00:00.000000000 +0000 +++ gdm3-3.28.2/debian/gbp.conf 2018-05-29 12:23:25.000000000 +0000 @@ -0,0 +1,6 @@ +[DEFAULT] +pristine-tar = True +debian-branch=ubuntu/bionic +upstream-branch=upstream/3.28.x +upstream-vcs-tag = %(version)s +debian-tag = ubuntu/%(version)s diff -Nru gdm3-3.28.0/debian/patches/0001-libgdm-Don-t-unref-a-connection-that-s-in-use.patch gdm3-3.28.2/debian/patches/0001-libgdm-Don-t-unref-a-connection-that-s-in-use.patch --- gdm3-3.28.0/debian/patches/0001-libgdm-Don-t-unref-a-connection-that-s-in-use.patch 2018-05-17 10:55:59.000000000 +0000 +++ gdm3-3.28.2/debian/patches/0001-libgdm-Don-t-unref-a-connection-that-s-in-use.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,37 +0,0 @@ -From 68910f303a571dbe8ee4df57018c27a50b26aa7e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= -Date: Wed, 9 May 2018 15:43:27 +0100 -Subject: [PATCH 1/2] libgdm: Don't unref a connection that's in use - -If an async task tries to reuse an open connection, -it erroneously explicitly unrefs it. That is incorrect, -because there are weak references in use to handle -disposing the connection when its no longer in use. - -This commit makes sure the local connection object -in open_connection is nullified so the connection -doesn't get autofree'd. - -Bug-Upstream: https://bugzilla.gnome.org/show_bug.cgi?id=795940 -Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/1766137 -(cherry picked from commit 4654042d22c71da599d60a7e2f0570acf3d4a166) ---- - libgdm/gdm-client.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/libgdm/gdm-client.c b/libgdm/gdm-client.c -index bcae8ba2..c017bf86 100644 ---- a/libgdm/gdm-client.c -+++ b/libgdm/gdm-client.c -@@ -583,6 +583,8 @@ gdm_client_open_connection_finish (GdmClient *client, - - if (client->priv->connection == NULL) { - client->priv->connection = g_steal_pointer (&connection); -+ } else if (client->priv->connection == connection) { -+ connection = NULL; - } - - finish_pending_opens (client, NULL); --- -2.17.0 - diff -Nru gdm3-3.28.0/debian/patches/0002-libgdm-add-weak-pointer-for-connection-object.patch gdm3-3.28.2/debian/patches/0002-libgdm-add-weak-pointer-for-connection-object.patch --- gdm3-3.28.0/debian/patches/0002-libgdm-add-weak-pointer-for-connection-object.patch 2018-05-17 10:55:59.000000000 +0000 +++ gdm3-3.28.2/debian/patches/0002-libgdm-add-weak-pointer-for-connection-object.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,57 +0,0 @@ -From b3cfe3025feb272040ab701cfdb800c07f7f4c50 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= -Date: Wed, 9 May 2018 15:43:27 +0100 -Subject: [PATCH 2/2] libgdm: add weak pointer for connection object - -At the moment we fail to nullify GdmClient's -connection to GDM when the connection is disposed. - -This commit adds a weak pointer to correct that mistake. - -Bug-Upstream: https://bugzilla.gnome.org/show_bug.cgi?id=795940 -Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/1766137 -(cherry picked from commit ccba35d58ae27b02979310d5914a96186afa31de) ---- - libgdm/gdm-client.c | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - -diff --git a/libgdm/gdm-client.c b/libgdm/gdm-client.c -index c017bf86..b5f35306 100644 ---- a/libgdm/gdm-client.c -+++ b/libgdm/gdm-client.c -@@ -460,6 +460,10 @@ gdm_client_open_connection_sync (GdmClient *client, - g_clear_pointer (&client->priv->address, g_free); - goto out; - } -+ -+ g_object_add_weak_pointer (G_OBJECT (client->priv->connection), -+ (gpointer *) -+ &client->priv->connection); - } else { - client->priv->connection = g_object_ref (client->priv->connection); - } -@@ -583,6 +587,8 @@ gdm_client_open_connection_finish (GdmClient *client, - - if (client->priv->connection == NULL) { - client->priv->connection = g_steal_pointer (&connection); -+ g_object_add_weak_pointer (G_OBJECT (client->priv->connection), -+ (gpointer *) &client->priv->connection); - } else if (client->priv->connection == connection) { - connection = NULL; - } -@@ -1616,6 +1622,12 @@ gdm_client_finalize (GObject *object) - &client->priv->chooser); - } - -+ if (client->priv->connection != NULL) { -+ g_object_remove_weak_pointer (G_OBJECT (client->priv->connection), -+ (gpointer *) -+ &client->priv->connection); -+ } -+ - g_clear_object (&client->priv->manager); - g_clear_object (&client->priv->connection); - --- -2.17.0 - diff -Nru gdm3-3.28.0/debian/patches/series gdm3-3.28.2/debian/patches/series --- gdm3-3.28.0/debian/patches/series 2018-05-17 10:55:59.000000000 +0000 +++ gdm3-3.28.2/debian/patches/series 2018-05-29 12:23:25.000000000 +0000 @@ -1,5 +1,3 @@ -0001-libgdm-Don-t-unref-a-connection-that-s-in-use.patch -0002-libgdm-add-weak-pointer-for-connection-object.patch 16_xserver_path.patch 90_config_comments.patch 91_dconf_database_path.patch diff -Nru gdm3-3.28.0/depcomp gdm3-3.28.2/depcomp --- gdm3-3.28.0/depcomp 2018-03-13 14:01:46.000000000 +0000 +++ gdm3-3.28.2/depcomp 2018-05-17 14:13:29.000000000 +0000 @@ -1,4 +1,4 @@ -#! /bin/sh +#!/bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2016-01-11.22; # UTC diff -Nru gdm3-3.28.0/libgdm/gdm-client.c gdm3-3.28.2/libgdm/gdm-client.c --- gdm3-3.28.0/libgdm/gdm-client.c 2018-02-19 18:16:32.000000000 +0000 +++ gdm3-3.28.2/libgdm/gdm-client.c 2018-05-17 14:10:28.000000000 +0000 @@ -460,6 +460,10 @@ g_clear_pointer (&client->priv->address, g_free); goto out; } + + g_object_add_weak_pointer (G_OBJECT (client->priv->connection), + (gpointer *) + &client->priv->connection); } else { client->priv->connection = g_object_ref (client->priv->connection); } @@ -583,6 +587,10 @@ if (client->priv->connection == NULL) { client->priv->connection = g_steal_pointer (&connection); + g_object_add_weak_pointer (G_OBJECT (client->priv->connection), + (gpointer *) &client->priv->connection); + } else if (client->priv->connection == connection) { + connection = NULL; } finish_pending_opens (client, NULL); @@ -816,8 +824,8 @@ &client->priv->manager); g_object_weak_ref (G_OBJECT (client->priv->user_verifier), (GWeakNotify) - g_clear_object, - &client->priv->connection); + g_object_unref, + client->priv->connection); if (client->priv->enabled_extensions != NULL) { gboolean res; @@ -1186,8 +1194,8 @@ &client->priv->manager); g_object_weak_ref (G_OBJECT (client->priv->greeter), (GWeakNotify) - g_clear_object, - &client->priv->connection); + g_object_unref, + client->priv->connection); query_for_timed_login_requested_signal (client->priv->greeter); } @@ -1370,8 +1378,8 @@ &client->priv->manager); g_object_weak_ref (G_OBJECT (client->priv->remote_greeter), (GWeakNotify) - g_clear_object, - &client->priv->connection); + g_object_unref, + client->priv->connection); } return client->priv->remote_greeter; @@ -1553,8 +1561,8 @@ &client->priv->manager); g_object_weak_ref (G_OBJECT (client->priv->chooser), (GWeakNotify) - g_clear_object, - &client->priv->connection); + g_object_unref, + client->priv->connection); } return client->priv->chooser; @@ -1614,6 +1622,12 @@ &client->priv->chooser); } + if (client->priv->connection != NULL) { + g_object_remove_weak_pointer (G_OBJECT (client->priv->connection), + (gpointer *) + &client->priv->connection); + } + g_clear_object (&client->priv->manager); g_clear_object (&client->priv->connection); diff -Nru gdm3-3.28.0/libgdm/gdm-client-glue.h gdm3-3.28.2/libgdm/gdm-client-glue.h --- gdm3-3.28.0/libgdm/gdm-client-glue.h 2018-02-20 19:46:41.000000000 +0000 +++ gdm3-3.28.2/libgdm/gdm-client-glue.h 2018-05-16 20:00:46.000000000 +0000 @@ -1,7 +1,8 @@ /* - * Generated by gdbus-codegen 2.54.3. DO NOT EDIT. + * Generated by gdbus-codegen 2.56.1. DO NOT EDIT. * - * The license of this code is the same as for the source it was derived from. + * The license of this code is the same as for the D-Bus interface description + * it was derived from. */ #ifndef __GDM_CLIENT_GLUE_H__ diff -Nru gdm3-3.28.0/libgdm/gdm.pc gdm3-3.28.2/libgdm/gdm.pc --- gdm3-3.28.0/libgdm/gdm.pc 2018-03-13 14:01:58.000000000 +0000 +++ gdm3-3.28.2/libgdm/gdm.pc 2018-05-17 14:13:42.000000000 +0000 @@ -5,7 +5,7 @@ Name: GDM Client Library Description: Client Library for communicating with GDM daemon -Version: 3.28.0 +Version: 3.28.2 Libs: -L${libdir} -lgdm Cflags: -I${includedir}/gdm Requires: gobject-2.0 diff -Nru gdm3-3.28.0/ltmain.sh gdm3-3.28.2/ltmain.sh --- gdm3-3.28.0/ltmain.sh 2018-03-13 14:01:31.000000000 +0000 +++ gdm3-3.28.2/ltmain.sh 2018-05-17 14:13:16.000000000 +0000 @@ -7272,10 +7272,12 @@ # -tp=* Portland pgcc target processor selection # --sysroot=* for sysroot support # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + # -specs=* GCC specs files # -stdlib=* select c++ std lib with clang -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ - -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*) + -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ + -specs=*) func_quote_for_eval "$arg" arg=$func_quote_for_eval_result func_append compile_command " $arg" diff -Nru gdm3-3.28.0/missing gdm3-3.28.2/missing --- gdm3-3.28.0/missing 2018-03-13 14:01:44.000000000 +0000 +++ gdm3-3.28.2/missing 2018-05-17 14:13:28.000000000 +0000 @@ -1,4 +1,4 @@ -#! /bin/sh +#!/bin/sh # Common wrapper for a few potentially missing GNU programs. scriptversion=2016-01-11.22; # UTC diff -Nru gdm3-3.28.0/NEWS gdm3-3.28.2/NEWS --- gdm3-3.28.0/NEWS 2018-03-13 13:58:54.000000000 +0000 +++ gdm3-3.28.2/NEWS 2018-05-17 14:12:22.000000000 +0000 @@ -1,4 +1,17 @@ ============== +Version 3.28.2 +============== +- Reference counting fixes for GdmClient- ensure plymouth is quit properly even when local greeter is disabled +- make sure GDM doesn't hang when called with unknown command line arguments +- Translation updates + +============== +Version 3.28.1 +============== +- Properly stop boot splash even if local login screen is disabled +- Translation updates + +============== Version 3.28.0 ============== - Translation updates diff -Nru gdm3-3.28.0/pam-extensions/gdm-pam-extensions.pc gdm3-3.28.2/pam-extensions/gdm-pam-extensions.pc --- gdm3-3.28.0/pam-extensions/gdm-pam-extensions.pc 2018-03-13 14:01:58.000000000 +0000 +++ gdm3-3.28.2/pam-extensions/gdm-pam-extensions.pc 2018-05-17 14:13:42.000000000 +0000 @@ -5,5 +5,5 @@ Name: GDM PAM Extensions Description: Macros for custom protocols over PAM -Version: 3.28.0 +Version: 3.28.2 Cflags: -I${includedir}/gdm diff -Nru gdm3-3.28.0/po/sk.po gdm3-3.28.2/po/sk.po --- gdm3-3.28.0/po/sk.po 2018-01-29 15:11:04.000000000 +0000 +++ gdm3-3.28.2/po/sk.po 2018-05-16 18:03:38.000000000 +0000 @@ -12,8 +12,8 @@ "Project-Id-Version: gdm\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" "product=gdm&keywords=I18N+L10N&component=general\n" -"POT-Creation-Date: 2017-06-22 19:09+0000\n" -"PO-Revision-Date: 2017-07-13 12:01+0200\n" +"POT-Creation-Date: 2018-03-13 14:45+0000\n" +"PO-Revision-Date: 2018-03-16 22:35+0100\n" "Last-Translator: Dušan Kazik \n" "Language-Team: Slovak \n" "Language: sk\n" @@ -21,7 +21,19 @@ "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0;\n" -"X-Generator: Poedit 2.0.2\n" +"X-Generator: Poedit 2.0.6\n" + +#: ../chooser/gdm-host-chooser-dialog.c:140 +msgid "_Refresh" +msgstr "_Obnoviť" + +#: ../chooser/gdm-host-chooser-dialog.c:141 +msgid "_Cancel" +msgstr "_Zrušiť" + +#: ../chooser/gdm-host-chooser-dialog.c:142 +msgid "C_onnect" +msgstr "_Pripojiť" #: ../chooser/gdm-host-chooser-dialog.c:147 msgid "Select System" @@ -44,22 +56,22 @@ msgid "XDMCP: Unable to parse address" msgstr "XDMCP: Nepodarilo sa analyzovať adresu" -#: ../common/gdm-common.c:298 +#: ../common/gdm-common.c:317 #, c-format msgid "/dev/urandom is not a character device" msgstr "/dev/urandom nie je znakové zariadenie" -#: ../common/gdm-common.c:468 ../libgdm/gdm-user-switching.c:209 +#: ../common/gdm-common.c:487 ../libgdm/gdm-user-switching.c:209 #, c-format msgid "Could not identify the current session." msgstr "Nepodarilo sa identifikovať aktuálnu reláciu." -#: ../common/gdm-common.c:477 ../libgdm/gdm-user-switching.c:218 +#: ../common/gdm-common.c:496 ../libgdm/gdm-user-switching.c:218 #, c-format msgid "Could not identify the current seat." msgstr "Nepodarilo sa rozpoznať aktuálne sedenie." -#: ../common/gdm-common.c:487 ../libgdm/gdm-user-switching.c:228 +#: ../common/gdm-common.c:506 ../libgdm/gdm-user-switching.c:228 #, c-format msgid "" "The system is unable to determine whether to switch to an existing login " @@ -68,7 +80,7 @@ "Systém nie je schopný zistiť, či má prepnúť na existujúcu prihlasovaciu " "obrazovku alebo spustiť novú prihlasovaciu obrazovku." -#: ../common/gdm-common.c:495 ../libgdm/gdm-user-switching.c:236 +#: ../common/gdm-common.c:514 ../libgdm/gdm-user-switching.c:236 #, c-format msgid "The system is unable to start up a new login screen." msgstr "Systém nie je schopný spustiť novú prihlasovaciu obrazovku." @@ -90,70 +102,70 @@ "súbor so systémovým záznamom. Zatiaľ bude tento displej zakázaný. Po oprave " "problému reštartujte GDM." -#: ../daemon/gdm-manager.c:772 +#: ../daemon/gdm-manager.c:775 msgid "No display available" msgstr "Nie je dostupný žiadny displej" -#: ../daemon/gdm-manager.c:841 ../daemon/gdm-manager.c:1117 +#: ../daemon/gdm-manager.c:844 ../daemon/gdm-manager.c:1120 msgid "No session available" msgstr "Nie je dostupná žiadna relácia" -#: ../daemon/gdm-manager.c:860 +#: ../daemon/gdm-manager.c:863 msgid "Chooser session unavailable" msgstr "Nástroj na výber relácie nie je dostupný" -#: ../daemon/gdm-manager.c:872 +#: ../daemon/gdm-manager.c:875 msgid "Can only be called before user is logged in" msgstr "Môže byť volaný iba pred prihlásením používateľa" -#: ../daemon/gdm-manager.c:883 +#: ../daemon/gdm-manager.c:886 msgid "Caller not GDM" msgstr "Volajúci nie je GDM" -#: ../daemon/gdm-manager.c:893 +#: ../daemon/gdm-manager.c:896 msgid "Unable to open private communication channel" msgstr "Nepodarilo sa otvoriť súkromný komunikačný kanál" -#: ../daemon/gdm-server.c:391 +#: ../daemon/gdm-server.c:383 #, c-format msgid "Server was to be spawned by user %s but that user doesn’t exist" msgstr "Server mal byť spustený používateľom %s, taký ale neexistuje" # PK: prekladat alebo neprekladat? identifikator skupiny # DK: kludne moze byt prelozeny-neni obmedzenie na pocet znakov ako napr. v tabulke kde je lepsie nechat ID -#: ../daemon/gdm-server.c:402 ../daemon/gdm-server.c:422 +#: ../daemon/gdm-server.c:394 ../daemon/gdm-server.c:414 #, c-format msgid "Couldn’t set groupid to %d" msgstr "Nepodarilo sa nastaviť identifikátor skupiny na %d" -#: ../daemon/gdm-server.c:408 +#: ../daemon/gdm-server.c:400 #, c-format msgid "initgroups () failed for %s" msgstr "initgroups () zlyhalo pre %s" #  PK: prekladat alebo neprekladat? identifikator pouzivatela -#: ../daemon/gdm-server.c:414 +#: ../daemon/gdm-server.c:406 #, c-format msgid "Couldn’t set userid to %d" msgstr "Nepodarilo sa nastaviť identifikátor používateľa na %d" -#: ../daemon/gdm-server.c:492 +#: ../daemon/gdm-server.c:484 #, c-format msgid "%s: Could not open log file for display %s!" msgstr "%s: Nepodarilo sa otvoriť súbor so záznamom pre displej %s!" -#: ../daemon/gdm-server.c:513 ../daemon/gdm-server.c:519 -#: ../daemon/gdm-server.c:525 +#: ../daemon/gdm-server.c:505 ../daemon/gdm-server.c:511 +#: ../daemon/gdm-server.c:517 #, c-format msgid "%s: Error setting %s to %s" msgstr "%s: Chyba pri nastavovaní %s na %s" -#: ../daemon/gdm-server.c:545 +#: ../daemon/gdm-server.c:537 #, c-format msgid "%s: Server priority couldn’t be set to %d: %s" msgstr "%s: Priorita servera nemohla byť nastavená na %d: %s" -#: ../daemon/gdm-server.c:697 +#: ../daemon/gdm-server.c:689 #, c-format msgid "%s: Empty server command for display %s" msgstr "%s: Prázdny príkaz servera pre displej %s" @@ -182,33 +194,33 @@ msgid "The display device" msgstr "Zariadenie pre displej" -#: ../daemon/gdm-session.c:1224 +#: ../daemon/gdm-session.c:1261 msgid "Could not create authentication helper process" msgstr "Nepodarilo sa vytvoriť proces pomocníka pre overenie totožnosti" -#: ../daemon/gdm-session-worker.c:642 +#: ../daemon/gdm-session-worker.c:766 msgid "Your account was given a time limit that’s now passed." msgstr "Vášmu účtu bol pridelený časový limit, ktorý práve teraz vypršal." -#: ../daemon/gdm-session-worker.c:649 +#: ../daemon/gdm-session-worker.c:773 msgid "Sorry, that didn’t work. Please try again." msgstr "Prepáčte, toto nefungovalo. Prosím, skúste to znovu." -#: ../daemon/gdm-session-worker.c:1037 +#: ../daemon/gdm-session-worker.c:1170 msgid "Username:" msgstr "Používateľské meno:" -#: ../daemon/gdm-session-worker.c:1539 ../daemon/gdm-session-worker.c:1556 +#: ../daemon/gdm-session-worker.c:1672 ../daemon/gdm-session-worker.c:1689 #, c-format msgid "no user account available" msgstr "nie je k dispozícií žiaden používateľský účet" -#: ../daemon/gdm-session-worker.c:1583 +#: ../daemon/gdm-session-worker.c:1716 msgid "Unable to change to user" msgstr "Nepodarilo sa zmeniť na používateľa" # PM: to znie šialene, čo takto Správca relácií pre... -#: ../daemon/gdm-wayland-session.c:470 +#: ../daemon/gdm-wayland-session.c:478 msgid "GNOME Display Manager Wayland Session Launcher" msgstr "Spúšťač relácie Wayland pre Správcu prihlásenia GNOME" @@ -216,16 +228,16 @@ msgid "Could not create socket!" msgstr "Nepodarilo sa vytvoriť soket!" -#: ../daemon/gdm-x-session.c:812 +#: ../daemon/gdm-x-session.c:826 msgid "Run program through /etc/gdm/Xsession wrapper script" msgstr "Spustí program cez wrapper skript /etc/gdm/Xsession" -#: ../daemon/gdm-x-session.c:813 +#: ../daemon/gdm-x-session.c:827 msgid "Listen on TCP socket" msgstr "Bude načúvať na sokete TCP" # PM: to znie šialene, čo takto Správca relácií pre... -#: ../daemon/gdm-x-session.c:824 +#: ../daemon/gdm-x-session.c:838 msgid "GNOME Display Manager X Session Launcher" msgstr "Spúšťač relácie X pre Správcu prihlásenia GNOME" @@ -264,25 +276,25 @@ msgid "The GDM group should not be root. Aborting!" msgstr "Skupina pre GDM by nemala byť root. Prerušuje sa!" -#: ../daemon/main.c:318 +#: ../daemon/main.c:317 msgid "Make all warnings fatal" msgstr "Označí všetky upozornenia ako kritické" -#: ../daemon/main.c:319 +#: ../daemon/main.c:318 msgid "Exit after a time (for debugging)" msgstr "Skončí po nejakom čase (pre ladenie)" -#: ../daemon/main.c:320 +#: ../daemon/main.c:319 msgid "Print GDM version" msgstr "Vypíše verziu GDM" # PŠ: je to názov toho programu - Správca prihlásenia. Vždy sa tak volal... -#: ../daemon/main.c:333 +#: ../daemon/main.c:330 msgid "GNOME Display Manager" msgstr "Správca prihlásenia GNOME" #. make sure the pid file doesn't get wiped -#: ../daemon/main.c:381 +#: ../daemon/main.c:351 msgid "Only the root user can run GDM" msgstr "Len používateľ root môže spúšťať GDM" diff -Nru gdm3-3.28.0/po/zh_TW.po gdm3-3.28.2/po/zh_TW.po --- gdm3-3.28.0/po/zh_TW.po 2018-03-13 13:55:55.000000000 +0000 +++ gdm3-3.28.2/po/zh_TW.po 2018-05-16 18:03:38.000000000 +0000 @@ -15,8 +15,8 @@ "Project-Id-Version: gdm 3.2.0\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" "product=gdm&keywords=I18N+L10N&component=general\n" -"POT-Creation-Date: 2017-12-05 02:14+0000\n" -"PO-Revision-Date: 2018-02-24 21:20+0800\n" +"POT-Creation-Date: 2018-03-13 14:45+0000\n" +"PO-Revision-Date: 2018-03-26 18:07+0800\n" "Last-Translator: Cheng-Chia Tseng \n" "Language-Team: Chinese (Taiwan) \n" "Language: zh_TW\n" @@ -24,7 +24,7 @@ "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Poedit 2.0.3\n" +"X-Generator: Poedit 2.0.6\n" #: ../chooser/gdm-host-chooser-dialog.c:140 msgid "_Refresh" @@ -58,29 +58,29 @@ msgid "XDMCP: Unable to parse address" msgstr "XMDCP:無法解析位址" -#: ../common/gdm-common.c:298 +#: ../common/gdm-common.c:317 #, c-format msgid "/dev/urandom is not a character device" msgstr "/dev/urandom 不是字元裝置" -#: ../common/gdm-common.c:468 ../libgdm/gdm-user-switching.c:209 +#: ../common/gdm-common.c:487 ../libgdm/gdm-user-switching.c:209 #, c-format msgid "Could not identify the current session." msgstr "無法識別目前的工作階段。" -#: ../common/gdm-common.c:477 ../libgdm/gdm-user-switching.c:218 +#: ../common/gdm-common.c:496 ../libgdm/gdm-user-switching.c:218 #, c-format msgid "Could not identify the current seat." msgstr "無法識別目前的臺座。" -#: ../common/gdm-common.c:487 ../libgdm/gdm-user-switching.c:228 +#: ../common/gdm-common.c:506 ../libgdm/gdm-user-switching.c:228 #, c-format msgid "" "The system is unable to determine whether to switch to an existing login " "screen or start up a new login screen." msgstr "系統無法決定要切換到現有的登入畫面或是啟動一個新的登入畫面。" -#: ../common/gdm-common.c:495 ../libgdm/gdm-user-switching.c:236 +#: ../common/gdm-common.c:514 ../libgdm/gdm-user-switching.c:236 #, c-format msgid "The system is unable to start up a new login screen." msgstr "系統無法啟動一個新的登入畫面。" @@ -100,27 +100,27 @@ "因為某些內部錯誤,目前無法啟動 X 伺服器(即圖形介面)。請連絡管理員或是檢查系" "統紀錄檔來判斷。目前會停止使用這個顯示畫面。請在修正問題後重新啟動 GDM。" -#: ../daemon/gdm-manager.c:777 +#: ../daemon/gdm-manager.c:775 msgid "No display available" msgstr "沒有顯示可用" -#: ../daemon/gdm-manager.c:846 ../daemon/gdm-manager.c:1122 +#: ../daemon/gdm-manager.c:844 ../daemon/gdm-manager.c:1120 msgid "No session available" msgstr "沒有可用的工作階段" -#: ../daemon/gdm-manager.c:865 +#: ../daemon/gdm-manager.c:863 msgid "Chooser session unavailable" msgstr "選擇器工作階段無法使用" -#: ../daemon/gdm-manager.c:877 +#: ../daemon/gdm-manager.c:875 msgid "Can only be called before user is logged in" msgstr "只能在使用者登入前呼叫" -#: ../daemon/gdm-manager.c:888 +#: ../daemon/gdm-manager.c:886 msgid "Caller not GDM" msgstr "呼叫者不是 GDM" -#: ../daemon/gdm-manager.c:898 +#: ../daemon/gdm-manager.c:896 msgid "Unable to open private communication channel" msgstr "無法開啟隱私通訊頻道" @@ -333,14 +333,14 @@ "The login screen can optionally show a small image to provide site " "administrators and distributions a way to display branding." msgstr "" -"登入畫面可以選擇性的顯示一張小影像讓網站管理者和發行版本能展示他們的品牌。" +"登入畫面可以選擇性的顯示一張小影像讓網站管理者和各散布版能展示他們的品牌。" #: ../data/org.gnome.login-screen.gschema.xml.in.h:9 msgid "" "The fallback login screen can optionally show a small image to provide site " "administrators and distributions a way to display branding." msgstr "" -"後備登入畫面可以選擇性的顯示一張小影像讓網站管理者和發行版本能展示他們的品" +"後備登入畫面可以選擇性的顯示一張小影像讓網站管理者和各散布版能展示他們的品" "牌。" #: ../data/org.gnome.login-screen.gschema.xml.in.h:10 diff -Nru gdm3-3.28.0/test-driver gdm3-3.28.2/test-driver --- gdm3-3.28.0/test-driver 2018-03-13 14:01:46.000000000 +0000 +++ gdm3-3.28.2/test-driver 2018-05-17 14:13:29.000000000 +0000 @@ -1,4 +1,4 @@ -#! /bin/sh +#!/bin/sh # test-driver - basic testsuite driver script. scriptversion=2016-01-11.22; # UTC