5f4a086
Index: plugins/sound/gsd-sound-manager.c
5f4a086
===================================================================
5f4a086
--- plugins/sound/gsd-sound-manager.c	(revision 340)
5f4a086
+++ plugins/sound/gsd-sound-manager.c	(working copy)
5f4a086
@@ -296,7 +296,18 @@
5f4a086
 
5f4a086
         client = gconf_client_get_default ();
5f4a086
 
5f4a086
+	/* The "preference" here was just around because ESD introduced tradeoffs and was generally
5f4a086
+           poor software.  Pulseaudio is better and notably releases the sound device when not in
5f4a086
+           use, so should have no impact for legacy applications.  The reason we don't actually want
5f4a086
+           to even read from the preference is because someone may have set it to false intending
5f4a086
+           to disable ESD, but they will then disable Pulseaudio later.  
5f4a086
+           https://bugzilla.redhat.com/show_bug.cgi?id=430624
5f4a086
+        */
5f4a086
+#ifdef ENABLE_LEGACY_SOUND_PREF
5f4a086
         enable_sound = gconf_client_get_bool (client, "/desktop/gnome/sound/enable_esd", NULL);
5f4a086
+#else
5f4a086
+	enable_sound = TRUE;
5f4a086
+#endif
5f4a086
         event_sounds = gconf_client_get_bool (client, "/desktop/gnome/sound/event_sounds", NULL);
5f4a086
         /* FIXME this is completely bogus, the entry doesn't exist */
5f4a086
         event_changed_new = gconf_client_get_int  (client, "/desktop/gnome/sound/event_changed", NULL);
5f4a086
Index: configure.ac
5f4a086
===================================================================
5f4a086
--- configure.ac	(revision 340)
5f4a086
+++ configure.ac	(working copy)
5f4a086
@@ -317,6 +317,23 @@
5f4a086
 
5f4a086
 
5f4a086
 # ---------------------------------------------------------------------------
5f4a086
+# Enable Legacy Sound Preference
5f4a086
+# ---------------------------------------------------------------------------
5f4a086
+PKG_CHECK_MODULES(PULSEAUDIO, libpulse, have_pulseaudio=yes, AC_MSG_RESULT([no]))
5f4a086
+if test x$have_pulseaudio = xyes; then
5f4a086
+	default_enable_legacy_sound_pref=no
5f4a086
+else
5f4a086
+	default_enable_legacy_sound_pref=yes
5f4a086
+fi
5f4a086
+AC_ARG_ENABLE(legacy-sound-pref,
5f4a086
+	[AC_HELP_STRING([--enable-legacy-sound-pref],
5f4a086
+	[check for preference to start ESD])],
5f4a086
+	,enable_legacy_sound_pref=$default_enable_legacy_sound_pref)
5f4a086
+if test "x$enable_legacy_sound_pref" = "xyes"; then
5f4a086
+    AC_DEFINE(ENABLE_LEGACY_SOUND_PREF,1,[enable preference for ESD startup])
5f4a086
+fi
5f4a086
+
5f4a086
+# ---------------------------------------------------------------------------
5f4a086
 # Enable Profiling
5f4a086
 # ---------------------------------------------------------------------------
5f4a086
 AC_ARG_ENABLE(profiling,