[Xfce4-commits] <xfce4-genmon-plugin:master> Avoid zombification of processes started by clicking
Florian Rivoal
noreply at xfce.org
Thu Feb 24 15:26:03 CET 2011
Updating branch refs/heads/master
to a971e36fb3c27e51082b77e49a8f5a1eebd9fb45 (commit)
from e7c6e58b5c6aa3f489d032d22855e5475097098a (commit)
commit a971e36fb3c27e51082b77e49a8f5a1eebd9fb45
Author: Steve Tyler <stephent98 at hotmail.com>
Date: Thu Feb 24 08:44:27 2011 +0900
Avoid zombification of processes started by clicking
Fixes bug #3896.
panel-plugin/main.c | 15 ++++++++++++---
1 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/panel-plugin/main.c b/panel-plugin/main.c
index c22d722..b73efd8 100644
--- a/panel-plugin/main.c
+++ b/panel-plugin/main.c
@@ -32,6 +32,7 @@
#include <libxfce4util/libxfce4util.h>
#include <libxfcegui4/dialogs.h>
+#include <libxfcegui4/xfce-exec.h>
#include <libxfce4panel/xfce-panel-plugin.h>
#include <libxfce4panel/xfce-panel-convenience.h>
@@ -94,10 +95,18 @@ static void ExecOnClickCmd (Widget_t p_wSc, void *p_pvPlugin)
{
struct genmon_t *poPlugin = (genmon_t *) p_pvPlugin;
struct monitor_t *poMonitor = &(poPlugin->oMonitor);
- char result[256];
+ GError *error = NULL;
+
+ xfce_exec(poMonitor->onClickCmd, 0, 0, &error);
+ if (error) {
+ char first[256];
+ g_snprintf (first, sizeof(first), _("Could not run \"%s\""), poMonitor->onClickCmd);
+ xfce_message_dialog (NULL, _("Xfce Panel"),
+ GTK_STOCK_DIALOG_ERROR, first, error->message,
+ GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL);
+ g_error_free (error);
+ }
- genmon_SpawnCmd (poMonitor->onClickCmd, result,
- sizeof (poMonitor->onClickCmd), 0);
}
/**************************************************************/
More information about the Xfce4-commits
mailing list