rpms/gdm/devel gdm-2.21.8-fedora-logo.patch, NONE, 1.1 gdm-2.21.8-validate-dmrc.patch, NONE, 1.1 .cvsignore, 1.62, 1.63 gdm.spec, 1.335, 1.336 sources, 1.72, 1.73

William Jon McCann (mccann) fedora-extras-commits at redhat.com
Tue Feb 26 05:04:08 UTC 2008


Author: mccann

Update of /cvs/pkgs/rpms/gdm/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv25807

Modified Files:
	.cvsignore gdm.spec sources 
Added Files:
	gdm-2.21.8-fedora-logo.patch gdm-2.21.8-validate-dmrc.patch 
Log Message:
- Update to 2.21.8



gdm-2.21.8-fedora-logo.patch:

--- NEW FILE gdm-2.21.8-fedora-logo.patch ---
Index: gdm/gui/simple-greeter/gdm-simple-greeter.schemas.in
===================================================================
--- gdm/gui/simple-greeter/gdm-simple-greeter.schemas.in	(revision 5874)
+++ gdm/gui/simple-greeter/gdm-simple-greeter.schemas.in	(working copy)
@@ -6,7 +6,7 @@
       <applyto>/apps/gdm/simple-greeter/logo-icon-name</applyto>
       <owner>gdm-simple-greeter</owner>
       <type>string</type>
-      <default>computer</default>
+      <default>fedora-logo-icon</default>
       <locale name="C">
         <short>Icon name to use for greeter logo</short>
         <long>Set to the themed icon name to use for the greeter logo.</long>

gdm-2.21.8-validate-dmrc.patch:

--- NEW FILE gdm-2.21.8-validate-dmrc.patch ---
Index: gdm/daemon/gdm-session-direct.c
===================================================================
--- gdm/daemon/gdm-session-direct.c	(revision 5874)
+++ gdm/daemon/gdm-session-direct.c	(working copy)
@@ -842,6 +842,130 @@ gdm_session_direct_handle_saved_language
         return DBUS_HANDLER_RESULT_HANDLED;
 }
 
+static gboolean
+is_prog_in_path (const char *prog)
+{
+        char    *f;
+        gboolean ret;
+
+        f = g_find_program_in_path (prog);
+        ret = (f != NULL);
+        g_free (f);
+        return ret;
+}
+
+static gboolean
+get_session_command_for_file (const char *file,
+                              char      **command)
+{
+        GKeyFile   *key_file;
+        GError     *error;
+        char       *full_path;
+        char       *exec;
+        gboolean    ret;
+        gboolean    res;
+        const char *search_dirs[] = {
+                "/etc/X11/sessions/",
+                DMCONFDIR "/Sessions/",
+                DATADIR "/gdm/BuiltInSessions/",
+                DATADIR "/xsessions/",
+                NULL
+        };
+
+        exec = NULL;
+        ret = FALSE;
+        if (command != NULL) {
+                *command = NULL;
+        }
+
+        key_file = g_key_file_new ();
+
+        g_debug ("GdmSessionDirect: looking for session file '%s'", file);
+
+        error = NULL;
+        full_path = NULL;
+        res = g_key_file_load_from_dirs (key_file,
+                                         file,
+                                         search_dirs,
+                                         &full_path,
+                                         G_KEY_FILE_NONE,
+                                         &error);
+        if (! res) {
+                g_debug ("GdmSessionDirect: File '%s' not found: %s", file, error->message);
+                g_error_free (error);
+                if (command != NULL) {
+                        *command = NULL;
+                }
+                goto out;
+        }
+
+        error = NULL;
+        res = g_key_file_get_boolean (key_file,
+                                      G_KEY_FILE_DESKTOP_GROUP,
+                                      G_KEY_FILE_DESKTOP_KEY_HIDDEN,
+                                      &error);
+        if (error == NULL && res) {
+                g_debug ("GdmSessionDirect: Session %s is marked as hidden", file);
+                goto out;
+        }
+
+        error = NULL;
+        exec = g_key_file_get_string (key_file,
+                                      G_KEY_FILE_DESKTOP_GROUP,
+                                      G_KEY_FILE_DESKTOP_KEY_TRY_EXEC,
+                                      &error);
+        if (exec == NULL) {
+                g_debug ("GdmSessionDirect: %s key not found", G_KEY_FILE_DESKTOP_KEY_TRY_EXEC);
+                goto out;
+        }
+
+        res = is_prog_in_path (exec);
+        g_free (exec);
+
+        if (! res) {
+                g_debug ("GdmSessionDirect: Command not found: %s", G_KEY_FILE_DESKTOP_KEY_TRY_EXEC);
+                goto out;
+        }
+
+        error = NULL;
+        exec = g_key_file_get_string (key_file,
+                                      G_KEY_FILE_DESKTOP_GROUP,
+                                      G_KEY_FILE_DESKTOP_KEY_EXEC,
+                                      &error);
+        if (error != NULL) {
+                g_debug ("GdmSessionDirect: %s key not found: %s",
+                         G_KEY_FILE_DESKTOP_KEY_EXEC,
+                         error->message);
+                g_error_free (error);
+                goto out;
+        }
+
+        if (command != NULL) {
+                *command = g_strdup (exec);
+        }
+        ret = TRUE;
+
+out:
+        g_free (exec);
+
+        return ret;
+}
+
+static gboolean
+get_session_command_for_name (const char *name,
+                              char      **command)
+{
+        gboolean res;
+        char    *filename;
+
+        filename = g_strdup_printf ("%s.desktop", name);
+
+        command = NULL;
+        res = get_session_command_for_file (filename, command);
+
+        return res;
+}
+
 static DBusHandlerResult
 gdm_session_direct_handle_saved_session_name_read (GdmSessionDirect *session,
                                                    DBusConnection   *connection,
@@ -862,6 +986,14 @@ gdm_session_direct_handle_saved_session_
         dbus_connection_send (connection, reply, NULL);
         dbus_message_unref (reply);
 
+        if (! get_session_command_for_name (session_name, NULL)) {
+                /* ignore sessions that don't exist */
+                g_debug ("GdmSessionDirect: not using invalid .dmrc session: %s", session_name);
+                g_free (session->priv->saved_session);
+                session->priv->saved_session = NULL;
+                goto out;
+        }
+
         if (strcmp (session_name,
                     get_default_session_name (session)) != 0) {
                 g_free (session->priv->saved_session);
@@ -870,7 +1002,7 @@ gdm_session_direct_handle_saved_session_
                 _gdm_session_default_session_name_changed (GDM_SESSION (session),
                                                            session_name);
         }
-
+ out:
         return DBUS_HANDLER_RESULT_HANDLED;
 }
 
@@ -1603,115 +1735,6 @@ send_environment (GdmSessionDirect *sess
                               session);
 }
 
-static gboolean
-is_prog_in_path (const char *prog)
-{
-        char    *f;
-        gboolean ret;
-
-        f = g_find_program_in_path (prog);
-        ret = (f != NULL);
-        g_free (f);
-        return ret;
-}
-
-static gboolean
-get_session_command_for_file (const char *file,
-                              char      **command)
-{
-        GKeyFile   *key_file;
-        GError     *error;
-        char       *full_path;
-        char       *exec;
-        gboolean    ret;
-        gboolean    res;
-        const char *search_dirs[] = {
-                "/etc/X11/sessions/",
-                DMCONFDIR "/Sessions/",
-                DATADIR "/gdm/BuiltInSessions/",
-                DATADIR "/xsessions/",
-                NULL
-        };
-
-        exec = NULL;
-        ret = FALSE;
-        if (command != NULL) {
-                *command = NULL;
-        }
-
-        key_file = g_key_file_new ();
-
-        g_debug ("GdmSessionDirect: looking for session file '%s'", file);
-
-        error = NULL;
-        full_path = NULL;
-        res = g_key_file_load_from_dirs (key_file,
-                                         file,
-                                         search_dirs,
-                                         &full_path,
-                                         G_KEY_FILE_NONE,
-                                         &error);
-        if (! res) {
-                g_debug ("GdmSessionDirect: File '%s' not found: %s", file, error->message);
-                g_error_free (error);
-                if (command != NULL) {
-                        *command = NULL;
-                }
-                goto out;
-        }
-
-        error = NULL;
-        res = g_key_file_get_boolean (key_file,
-                                      G_KEY_FILE_DESKTOP_GROUP,
-                                      G_KEY_FILE_DESKTOP_KEY_HIDDEN,
-                                      &error);
-        if (error == NULL && res) {
-                g_debug ("GdmSessionDirect: Session %s is marked as hidden", file);
-                goto out;
-        }
-
-        error = NULL;
-        exec = g_key_file_get_string (key_file,
-                                      G_KEY_FILE_DESKTOP_GROUP,
-                                      G_KEY_FILE_DESKTOP_KEY_TRY_EXEC,
-                                      &error);
-        if (exec == NULL) {
-                g_debug ("GdmSessionDirect: %s key not found", G_KEY_FILE_DESKTOP_KEY_TRY_EXEC);
-                goto out;
-        }
-
-        res = is_prog_in_path (exec);
-        g_free (exec);
-
-        if (! res) {
-                g_debug ("GdmSessionDirect: Command not found: %s", G_KEY_FILE_DESKTOP_KEY_TRY_EXEC);
-                goto out;
-        }
-
-        error = NULL;
-        exec = g_key_file_get_string (key_file,
-                                      G_KEY_FILE_DESKTOP_GROUP,
-                                      G_KEY_FILE_DESKTOP_KEY_EXEC,
-                                      &error);
-        if (error != NULL) {
-                g_debug ("GdmSessionDirect: %s key not found: %s",
-                         G_KEY_FILE_DESKTOP_KEY_EXEC,
-                         error->message);
-                g_error_free (error);
-                goto out;
-        }
-
-        if (command != NULL) {
-                *command = g_strdup (exec);
-        }
-        ret = TRUE;
-
-out:
-        g_free (exec);
-
-        return ret;
-}
-
 static const char *
 get_language_name (GdmSessionDirect *session)
 {
@@ -1725,6 +1748,8 @@ get_language_name (GdmSessionDirect *ses
 static const char *
 get_session_name (GdmSessionDirect *session)
 {
+        /* FIXME: test the session names before we use them? */
+
         if (session->priv->selected_session != NULL) {
                 return session->priv->selected_session;
         }


Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/gdm/devel/.cvsignore,v
retrieving revision 1.62
retrieving revision 1.63
diff -u -r1.62 -r1.63
--- .cvsignore	9 Feb 2008 04:38:21 -0000	1.62
+++ .cvsignore	26 Feb 2008 05:03:33 -0000	1.63
@@ -1 +1 @@
-gdm-2.21.7.tar.gz
+gdm-2.21.8.tar.gz


Index: gdm.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gdm/devel/gdm.spec,v
retrieving revision 1.335
retrieving revision 1.336
diff -u -r1.335 -r1.336
--- gdm.spec	13 Feb 2008 05:14:25 -0000	1.335
+++ gdm.spec	26 Feb 2008 05:03:33 -0000	1.336
@@ -18,7 +18,7 @@
 
 Summary: The GNOME Display Manager
 Name: gdm
-Version: 2.21.7
+Version: 2.21.8
 Release: 1%{?dist}
 Epoch: 1
 License: GPLv2+
@@ -29,6 +29,9 @@
 Source2: gdm-autologin-pam
 Source3: gdmsetup-pam
 
+Patch1: gdm-2.21.8-fedora-logo.patch
+Patch2: gdm-2.21.8-validate-dmrc.patch
+
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
 Prereq: /usr/sbin/useradd
@@ -98,12 +101,17 @@
 
 %prep
 %setup -q
+%patch1 -p1 -b .fedora-logo
+%patch2 -p1 -b .validate-dmrc
 
 %build
 cp -f %{SOURCE1} data/gdm
 cp -f %{SOURCE2} data/gdm-autologin
 cp -f %{SOURCE3} utils/gdmsetup-pam
 
+intltoolize --force
+autoreconf
+
 %configure --with-pam-prefix=%{_sysconfdir} \
 	   --enable-console-helper \
 	   --disable-scrollkeeper  \
@@ -291,6 +299,9 @@
 %attr(1770, root, gdm) %dir %{_localstatedir}/lib/gdm
 
 %changelog
+* Mon Feb 25 2008 Jon McCann <jmccann at redhat.com> - 1:2.21.8-1
+- Update to 2.21.8
+
 * Tue Feb 12 2008 Jon McCann <jmccann at redhat.com> - 1:2.21.7-1
 - Update to 2.21.7
 


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/gdm/devel/sources,v
retrieving revision 1.72
retrieving revision 1.73
diff -u -r1.72 -r1.73
--- sources	13 Feb 2008 05:14:25 -0000	1.72
+++ sources	26 Feb 2008 05:03:33 -0000	1.73
@@ -1 +1 @@
-248c1ce8c8c5fb5065e5b11fc13f5000  gdm-2.21.7.tar.gz
+5eecea9d8466bcab8790699685f28b0b  gdm-2.21.8.tar.gz




More information about the fedora-extras-commits mailing list