Package: audacious
Version: 1.5.1-4.1
Severity: normal
Tags: patch
Audacious does not save the DISPLAY variable with the session manager. As a
result, when saving the session with audacious on i.e. :0.1, it will respawn
on :0.0.
-- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.29-2-686 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages audacious depends on:
ii audacious-plugins 1.5.1-2.1 Base plugins for audacious
ii dbus 1.2.14-2 simple interprocess messaging syst
ii gtk2-engines-pixbuf 2.16.1-2 Pixbuf-based theme for GTK+ 2.x
ii libatk1.0-0 1.26.0-1 The ATK accessibility toolkit
ii libaudclient1 1.5.1-4.1 audacious dbus remote control libr
ii libaudid3tag1 1.5.1-4.1 audacious id3 tag manipulation lib
ii libc6 2.9-13 GNU C Library: Shared libraries
ii libcairo2 1.8.6-2+b1 The Cairo 2D vector graphics libra
ii libdbus-1-3 1.2.14-2 simple interprocess messaging syst
ii libdbus-glib-1-2 0.80-4 simple interprocess messaging syst
ii libfontconfig1 2.6.0-3 generic font configuration library
ii libfreetype6 2.3.9-4.1 FreeType 2 font engine, shared lib
ii libglib2.0-0 2.20.1-2 The GLib library of C routines
ii libgtk2.0-0 2.16.1-2 The GTK+ graphical user interface
ii libice6 2:1.0.5-1 X11 Inter-Client Exchange library
ii libmcs1 0.7.1-1 Abstraction library to store confi
ii libmowgli1 0.6.1-1 a high performance development fra
ii libpango1.0-0 1.24.2-1 Layout and rendering of internatio
ii libsamplerate0 0.1.7-2 audio rate conversion library
ii libsm6 2:1.1.0-2 X11 Session Management library
ii libx11-6 2:1.2.1-1 X11 client-side library
Versions of packages audacious recommends:
ii audacious-plugins-extra 1.5.1-2.1 Various extra plugins for audaciou
ii unzip 6.0-1 De-archiver for .zip files
audacious suggests no packages.
-- no debconf information
diff -u -N -r audacious-1.5.1.org/src/audacious/signals.c audacious-1.5.1/src/audacious/signals.c
--- audacious-1.5.1.org/src/audacious/signals.c 2008-05-23 16:00:34.000000000 -0600
+++ audacious-1.5.1/src/audacious/signals.c 2009-05-30 15:58:07.000000000 -0600
@@ -257,14 +257,28 @@
static void
signal_session_quit_cb(EggSMClient *client, gpointer user_data)
{
+ gchar *argv[2];
+
g_print("Session quit requested. Saving state and shutting down.\n");
+
+ argv[0] = "audacious";
+ argv[1] = g_strdup_printf ("--display=%s", gdk_display_get_name (gdk_display_get_default()));
+ egg_sm_client_set_restart_command (client, 2, argv);
+
aud_quit();
}
static void
-signal_session_save_cb(EggSMClient *client, const char *state_dir, gpointer user_data)
+signal_session_save_cb(EggSMClient *client, GKeyFile *state_file, gpointer user_data)
{
+ gchar *argv[2];
+
g_print("Session save requested. Saving state.\n");
+
+ argv[0] = "audacious";
+ argv[1] = g_strdup_printf ("--display=%s", gdk_display_get_name (gdk_display_get_default()));
+ egg_sm_client_set_restart_command (client, 2, argv);
+
aud_config_save();
}
#endif