disable fatal-critical stuff

This commit is contained in:
Ray Strode 2011-06-28 13:17:55 -04:00
parent 144d4763c0
commit 7ed046b604
2 changed files with 189 additions and 1 deletions

View File

@ -0,0 +1,182 @@
From fc6ee4aa6d71d2c448a9b62aca24ba318163c590 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Tue, 28 Jun 2011 12:51:51 -0400
Subject: [PATCH] common: don't tank on criticals
Tiny (or not so tiny) bugs in components below GDM in the stack
can lead to critical warnings.
In development releases, GDM by default will crash when encountering
a critical warning.
Losing the login screen is a big deal. We shouldn't automatically subject
our users to "can't log in" in order to highlight bugs in development
releases.
This commit removes fatal criticals by default.
---
common/gdm-common.c | 9 ---------
common/gdm-common.h | 1 -
daemon/factory-slave-main.c | 2 --
daemon/main.c | 2 --
daemon/product-slave-main.c | 2 --
daemon/session-worker-main.c | 2 --
daemon/simple-slave-main.c | 2 --
daemon/xdmcp-chooser-slave-main.c | 2 --
gui/simple-chooser/chooser-main.c | 2 --
gui/simple-chooser/gdm-host-chooser.c | 2 --
gui/simple-greeter/greeter-main.c | 2 --
11 files changed, 0 insertions(+), 28 deletions(-)
diff --git a/common/gdm-common.c b/common/gdm-common.c
index 7a4e26d..865341a 100644
--- a/common/gdm-common.c
+++ b/common/gdm-common.c
@@ -65,15 +65,6 @@ gdm_is_version_unstable (void)
return unstable;
}
-void
-gdm_set_fatal_warnings_if_unstable (void)
-{
- if (gdm_is_version_unstable ()) {
- g_setenv ("G_DEBUG", "fatal_criticals", FALSE);
- g_log_set_always_fatal (G_LOG_LEVEL_CRITICAL);
- }
-}
-
gboolean
gdm_get_pwent_for_name (const char *name,
struct passwd **pwentp)
diff --git a/common/gdm-common.h b/common/gdm-common.h
index 06300c8..41ddf1c 100644
--- a/common/gdm-common.h
+++ b/common/gdm-common.h
@@ -31,7 +31,6 @@
G_BEGIN_DECLS
gboolean gdm_is_version_unstable (void);
-void gdm_set_fatal_warnings_if_unstable (void);
int gdm_wait_on_pid (int pid);
int gdm_wait_on_and_kill_pid (int pid,
diff --git a/daemon/factory-slave-main.c b/daemon/factory-slave-main.c
index 9caab1c..2441260 100644
--- a/daemon/factory-slave-main.c
+++ b/daemon/factory-slave-main.c
@@ -183,8 +183,6 @@ main (int argc,
textdomain (GETTEXT_PACKAGE);
setlocale (LC_ALL, "");
- gdm_set_fatal_warnings_if_unstable ();
-
g_type_init ();
context = g_option_context_new (_("GNOME Display Manager Slave"));
diff --git a/daemon/main.c b/daemon/main.c
index 5b8d66b..2ffb779 100644
--- a/daemon/main.c
+++ b/daemon/main.c
@@ -543,8 +543,6 @@ main (int argc,
ret = 1;
- gdm_set_fatal_warnings_if_unstable ();
-
g_type_init ();
context = g_option_context_new (_("GNOME Display Manager"));
diff --git a/daemon/product-slave-main.c b/daemon/product-slave-main.c
index b0ab03f..b8e4755 100644
--- a/daemon/product-slave-main.c
+++ b/daemon/product-slave-main.c
@@ -187,8 +187,6 @@ main (int argc,
textdomain (GETTEXT_PACKAGE);
setlocale (LC_ALL, "");
- gdm_set_fatal_warnings_if_unstable ();
-
g_type_init ();
context = g_option_context_new (_("GNOME Display Manager Slave"));
diff --git a/daemon/session-worker-main.c b/daemon/session-worker-main.c
index 35b4463..9d40b8d 100644
--- a/daemon/session-worker-main.c
+++ b/daemon/session-worker-main.c
@@ -151,8 +151,6 @@ main (int argc,
g_type_init ();
- gdm_set_fatal_warnings_if_unstable ();
-
/* Translators: worker is a helper process that does the work
of starting up a session */
context = g_option_context_new (_("GNOME Display Manager Session Worker"));
diff --git a/daemon/simple-slave-main.c b/daemon/simple-slave-main.c
index 7751b61..057492b 100644
--- a/daemon/simple-slave-main.c
+++ b/daemon/simple-slave-main.c
@@ -187,8 +187,6 @@ main (int argc,
textdomain (GETTEXT_PACKAGE);
setlocale (LC_ALL, "");
- gdm_set_fatal_warnings_if_unstable ();
-
g_type_init ();
context = g_option_context_new (_("GNOME Display Manager Slave"));
diff --git a/daemon/xdmcp-chooser-slave-main.c b/daemon/xdmcp-chooser-slave-main.c
index f86ea89..ea54210 100644
--- a/daemon/xdmcp-chooser-slave-main.c
+++ b/daemon/xdmcp-chooser-slave-main.c
@@ -189,8 +189,6 @@ main (int argc,
textdomain (GETTEXT_PACKAGE);
setlocale (LC_ALL, "");
- gdm_set_fatal_warnings_if_unstable ();
-
g_type_init ();
context = g_option_context_new (_("GNOME Display Manager Slave"));
diff --git a/gui/simple-chooser/chooser-main.c b/gui/simple-chooser/chooser-main.c
index ac1edd6..2978a23 100644
--- a/gui/simple-chooser/chooser-main.c
+++ b/gui/simple-chooser/chooser-main.c
@@ -233,8 +233,6 @@ main (int argc, char *argv[])
setlocale (LC_ALL, "");
- gdm_set_fatal_warnings_if_unstable ();
-
g_type_init ();
gdm_log_init ();
diff --git a/gui/simple-chooser/gdm-host-chooser.c b/gui/simple-chooser/gdm-host-chooser.c
index 371ba28..1f5f9c6 100644
--- a/gui/simple-chooser/gdm-host-chooser.c
+++ b/gui/simple-chooser/gdm-host-chooser.c
@@ -232,8 +232,6 @@ main (int argc, char *argv[])
setlocale (LC_ALL, "");
- gdm_set_fatal_warnings_if_unstable ();
-
g_type_init ();
gdm_log_init ();
diff --git a/gui/simple-greeter/greeter-main.c b/gui/simple-greeter/greeter-main.c
index aa165fa..a2c533e 100644
--- a/gui/simple-greeter/greeter-main.c
+++ b/gui/simple-greeter/greeter-main.c
@@ -252,8 +252,6 @@ main (int argc, char *argv[])
setlocale (LC_ALL, "");
- gdm_set_fatal_warnings_if_unstable ();
-
g_type_init ();
gdm_profile_start ("Initializing settings client");
--
1.7.5.4

View File

@ -15,7 +15,7 @@
Summary: The GNOME Display Manager Summary: The GNOME Display Manager
Name: gdm Name: gdm
Version: 3.1.2 Version: 3.1.2
Release: 2%{?dist} Release: 3%{?dist}
Epoch: 1 Epoch: 1
License: GPLv2+ License: GPLv2+
Group: User Interface/X Group: User Interface/X
@ -98,6 +98,7 @@ Requires: audit-libs >= %{libauditver}
Requires: system-icon-theme Requires: system-icon-theme
Patch0: fix-build.patch Patch0: fix-build.patch
Patch1: disable-fatal-criticals.patch
# Fedora-specific # Fedora-specific
Patch98: plymouth.patch Patch98: plymouth.patch
@ -128,6 +129,7 @@ The GDM fingerprint plugin provides functionality necessary to use a fingerprint
%prep %prep
%setup -q %setup -q
%patch0 -p1 -b .fix-build %patch0 -p1 -b .fix-build
%patch1 -p1 -b .disable-fatal-criticals
%patch98 -p1 -b .plymouth %patch98 -p1 -b .plymouth
%patch99 -p1 -b .fedora-logo %patch99 -p1 -b .fedora-logo
@ -362,6 +364,10 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor >&/dev/null || :
%{_libdir}/gdm/simple-greeter/extensions/libfingerprint.so %{_libdir}/gdm/simple-greeter/extensions/libfingerprint.so
%changelog %changelog
* Tue Jun 28 2011 Ray Strode <rstrode@redhat.com> 3.1.2-3
- Disable fatal critcals
Resolves: #717324
* Tue Jun 21 2011 Michael Schwendt <mschwendt@fedoraproject.org> - 3.1.2-2 * Tue Jun 21 2011 Michael Schwendt <mschwendt@fedoraproject.org> - 3.1.2-2
- Fix /dev/ull typo in scriptlets (#693046). - Fix /dev/ull typo in scriptlets (#693046).