summaryrefslogtreecommitdiffstats
path: root/src/applet
diff options
context:
space:
mode:
authorNikola Pajkovsky <npajkovs@redhat.com>2011-03-10 17:41:55 +0100
committerNikola Pajkovsky <npajkovs@redhat.com>2011-03-11 11:30:12 +0100
commit2cf9c55560f7390d5364d182408cd4527700c53f (patch)
tree9842b6249b631457b5cda6b6946bcd12e3c3fab3 /src/applet
parent3e5a7859cccf49acbb0bdd3ca841545e5ab0f4c5 (diff)
downloadabrt-2cf9c55560f7390d5364d182408cd4527700c53f.tar.gz
abrt-2cf9c55560f7390d5364d182408cd4527700c53f.tar.xz
abrt-2cf9c55560f7390d5364d182408cd4527700c53f.zip
override old gui by new one
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
Diffstat (limited to 'src/applet')
-rw-r--r--src/applet/applet.c14
-rw-r--r--src/applet/applet_gtk.c11
-rw-r--r--src/applet/applet_gtk.h2
3 files changed, 14 insertions, 13 deletions
diff --git a/src/applet/applet.c b/src/applet/applet.c
index 1a2bf5c0..56266f12 100644
--- a/src/applet/applet.c
+++ b/src/applet/applet.c
@@ -46,8 +46,8 @@ static void Crash(DBusMessage* signal)
error_msg("dbus signal %s: parameter type mismatch", __func__);
return;
}
- const char* crash_id = NULL;
- r = load_charp(&in_iter, &crash_id);
+ const char* crash_dir = NULL;
+ r = load_charp(&in_iter, &crash_dir);
/* 3rd param: dir */
//dir parameter is not used for now, use is planned in the future
@@ -94,10 +94,10 @@ static void Crash(DBusMessage* signal)
*/
static time_t last_time = 0;
static char* last_package_name = NULL;
- static char* last_crash_id = NULL;
+ static char* last_crash_dir = NULL;
time_t cur_time = time(NULL);
if (last_package_name && strcmp(last_package_name, package_name) == 0
- && last_crash_id && strcmp(last_crash_id, crash_id) == 0
+ && last_crash_dir && strcmp(last_crash_dir, crash_dir) == 0
&& (unsigned)(cur_time - last_time) < 2 * 60 * 60
) {
log_msg("repeated crash in %s, not showing the notification", package_name);
@@ -106,10 +106,10 @@ static void Crash(DBusMessage* signal)
last_time = cur_time;
free(last_package_name);
last_package_name = xstrdup(package_name);
- free(last_crash_id);
- last_crash_id = xstrdup(crash_id);
+ free(last_crash_dir);
+ last_crash_dir = xstrdup(dir);
- show_crash_notification(applet, crash_id, message, package_name);
+ show_crash_notification(applet, dir, message, package_name);
}
static void QuotaExceeded(DBusMessage* signal)
diff --git a/src/applet/applet_gtk.c b/src/applet/applet_gtk.c
index d31328aa..04349648 100644
--- a/src/applet/applet_gtk.c
+++ b/src/applet/applet_gtk.c
@@ -65,12 +65,13 @@ static void action_report(NotifyNotification *notification, gchar *action, gpoin
perror_msg("vfork");
if (pid == 0)
{ /* child */
- char *buf = xasprintf("--report=%s", applet->ap_last_crash_id);
signal(SIGCHLD, SIG_DFL); /* undo SIG_IGN in abrt-applet */
- execl(BIN_DIR"/abrt-gui", "abrt-gui", buf, (char*) NULL);
+ execl(BIN_DIR"/bug-reporting-wizard", "bug-reporting-wizard",
+ applet->ap_last_crash_id, (char*) NULL);
/* Did not find abrt-gui in installation directory. Oh well */
/* Trying to find it in PATH */
- execlp("abrt-gui", "abrt-gui", buf, (char*) NULL);
+ execlp("bug-reporting-wizard", "bug-reporting-wizard",
+ applet->ap_last_crash_id, (char*) NULL);
perror_msg_and_die("Can't execute abrt-gui");
}
GError *err = NULL;
@@ -348,9 +349,9 @@ void set_icon_tooltip(struct applet *applet, const char *format, ...)
free(buf);
}
-void show_crash_notification(struct applet *applet, const char* crash_id, const char *format, ...)
+void show_crash_notification(struct applet *applet, const char* crash_dir, const char *format, ...)
{
- applet->ap_last_crash_id = crash_id;
+ applet->ap_last_crash_id = crash_dir;
va_list args;
va_start(args, format);
char *buf = xvasprintf(format, args);
diff --git a/src/applet/applet_gtk.h b/src/applet/applet_gtk.h
index 0bcf47b7..ca1a39c7 100644
--- a/src/applet/applet_gtk.h
+++ b/src/applet/applet_gtk.h
@@ -56,7 +56,7 @@ void applet_destroy(struct applet *applet);
void show_icon(struct applet *applet);
void hide_icon(struct applet *applet);
void set_icon_tooltip(struct applet *applet, const char *format, ...);
-void show_crash_notification(struct applet *applet, const char* crash_id, const char *format, ...);
+void show_crash_notification(struct applet *applet, const char* crash_dir, const char *format, ...);
void show_msg_notification(struct applet *applet, const char *format, ...);
void disable(struct applet *applet, const char *reason);
void enable(struct applet *applet, const char *reason);