[maemo-commits] [maemo-commits] r12849 - in projects/haf/trunk/hildon-desktop: . src

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Thu Jul 26 16:06:38 EEST 2007
Author: moimart
Date: 2007-07-26 16:06:36 +0300 (Thu, 26 Jul 2007)
New Revision: 12849

Modified:
   projects/haf/trunk/hildon-desktop/ChangeLog
   projects/haf/trunk/hildon-desktop/src/hd-desktop.c
Log:
2007-07-26  Moises Martinez  <moises.martinez at nokia.com>

        * src/hd-desktop.c: (hd_desktop_ping_timeout_dialog_response):
        - If the application is recovered and Ok is pressed destroy the dialog
        because the HDWMWindow doesn't exist anymore. Fixes: NB#64333
	* ChangeLog updated.



Modified: projects/haf/trunk/hildon-desktop/ChangeLog
===================================================================
--- projects/haf/trunk/hildon-desktop/ChangeLog	2007-07-26 11:40:14 UTC (rev 12848)
+++ projects/haf/trunk/hildon-desktop/ChangeLog	2007-07-26 13:06:36 UTC (rev 12849)
@@ -1,3 +1,9 @@
+2007-07-26  Moises Martinez  <moises.martinez at nokia.com>
+
+	* src/hd-desktop.c: (hd_desktop_ping_timeout_dialog_response):
+	- If the application is recovered and Ok is pressed destroy the dialog
+	because the HDWMWindow doesn't exist anymore. Fixes: NB#64333
+
 2007-07-26  Johan Bilien  <johan.bilien at nokia.com>
 
 	* background-manager/background-manager.{c,h,xml.in}:

Modified: projects/haf/trunk/hildon-desktop/src/hd-desktop.c
===================================================================
--- projects/haf/trunk/hildon-desktop/src/hd-desktop.c	2007-07-26 11:40:14 UTC (rev 12848)
+++ projects/haf/trunk/hildon-desktop/src/hd-desktop.c	2007-07-26 13:06:36 UTC (rev 12849)
@@ -126,6 +126,18 @@
 hd_desktop_ping_timeout_dialog_response (GtkDialog *note, gint ret, gpointer data)
 {
   HDWMWindow *win = (HDWMWindow *)data;
+
+  /* This is for NB#64333: If the application recover once the dialog 
+   * has been shown we end up having the situation where we try to kill an 
+   * application that has already been gone, hence destroyed.
+   */
+
+  if (!HD_WM_IS_WINDOW (win))
+  {	  
+    gtk_widget_destroy (GTK_WIDGET(note));
+    return;
+  }
+	  
   HDWMApplication *app = hd_wm_window_get_application (win);
 
   gtk_widget_destroy (GTK_WIDGET(note));
@@ -133,7 +145,7 @@
 
   if (ret == GTK_RESPONSE_OK)
   {
-    /* Kill the app */
+    /* Kill the app */	  
     if (!hd_wm_window_attempt_signal_kill (win, SIGKILL, FALSE))
       g_debug ("hd_wm_ping_timeout:failed to kill application '%s'.", hd_wm_window_get_name (win));
   }


More information about the maemo-commits mailing list