From abb44e01e53bfd642642b98168d975ea4a2b22a0 Mon Sep 17 00:00:00 2001 From: Jakub Filak Date: Tue, 7 Aug 2012 10:40:57 +0200 Subject: [PATCH] fixies for bugs introduced in the last build - Resolves: #799909 --- ...ete-dump-dir-which-doesn-t-exist-rhb.patch | 58 ++++++++++++ ...-bug-in-automatic-running-of-next-ev.patch | 91 +++++++++++++++++++ libreport.spec | 11 ++- 3 files changed, 159 insertions(+), 1 deletion(-) create mode 100644 0001-don-t-try-to-delete-dump-dir-which-doesn-t-exist-rhb.patch create mode 100644 0002-report-gtk-fixed-bug-in-automatic-running-of-next-ev.patch diff --git a/0001-don-t-try-to-delete-dump-dir-which-doesn-t-exist-rhb.patch b/0001-don-t-try-to-delete-dump-dir-which-doesn-t-exist-rhb.patch new file mode 100644 index 0000000..45a66be --- /dev/null +++ b/0001-don-t-try-to-delete-dump-dir-which-doesn-t-exist-rhb.patch @@ -0,0 +1,58 @@ +From a4a6498eea98356b1580411136e57c7518a58b79 Mon Sep 17 00:00:00 2001 +From: Jiri Moskovcak +Date: Mon, 6 Aug 2012 16:43:23 +0200 +Subject: [PATCH 1/2] don't try to delete dump dir which doesn't exist + rhbz#799909 + +--- + po/POTFILES.in | 1 + + src/lib/abrt_sock.c | 14 ++++++++++++-- + 2 files changed, 13 insertions(+), 2 deletions(-) + +diff --git a/po/POTFILES.in b/po/POTFILES.in +index 118ca80..c991817 100644 +--- a/po/POTFILES.in ++++ b/po/POTFILES.in +@@ -10,6 +10,7 @@ src/gtk-helpers/secrets.c + src/gui-wizard-gtk/main.c + src/gui-wizard-gtk/wizard.c + src/gui-wizard-gtk/wizard.glade ++src/lib/abrt_sock.c + src/lib/create_dump_dir.c + src/lib/event_config.c + src/lib/parse_options.c +diff --git a/src/lib/abrt_sock.c b/src/lib/abrt_sock.c +index b2c9928..b595208 100644 +--- a/src/lib/abrt_sock.c ++++ b/src/lib/abrt_sock.c +@@ -53,7 +53,7 @@ static int connect_to_abrtd_and_call_DeleteDebugDump(const char *dump_dir_name) + } + else + { +- perror_msg("Can't connect to '%s'", SOCKET_FILE); ++ VERB1 perror_msg("Can't connect to '%s'", SOCKET_FILE); + } + close(socketfd); + +@@ -70,7 +70,17 @@ int delete_dump_dir_possibly_using_abrtd(const char *dump_dir_name) + return dd_delete(dd); + dd_close(dd); + } ++ else ++ { ++ if (errno == ENOENT || errno == ENOTDIR) ++ /* No such dir, no point in trying to talk over socket */ ++ return 1; ++ } + + VERB1 log("Deleting '%s' via abrtd", dump_dir_name); +- return connect_to_abrtd_and_call_DeleteDebugDump(dump_dir_name); ++ const int res = connect_to_abrtd_and_call_DeleteDebugDump(dump_dir_name); ++ if (res != 0) ++ error_msg(_("Can't delete: '%s'"), dump_dir_name); ++ ++ return res; + } +-- +1.7.11.2 + diff --git a/0002-report-gtk-fixed-bug-in-automatic-running-of-next-ev.patch b/0002-report-gtk-fixed-bug-in-automatic-running-of-next-ev.patch new file mode 100644 index 0000000..f8e71a3 --- /dev/null +++ b/0002-report-gtk-fixed-bug-in-automatic-running-of-next-ev.patch @@ -0,0 +1,91 @@ +From f86f1d1a222b0e018601065395be169a4beb2f5e Mon Sep 17 00:00:00 2001 +From: Jakub Filak +Date: Tue, 7 Aug 2012 00:09:30 +0200 +Subject: [PATCH 2/2] report-gtk: fixed bug in automatic running of next event + +- simplified code (the 'Forward' button is simultaneously clicked) + +Signed-off-by: Jakub Filak +--- + src/gui-wizard-gtk/wizard.c | 52 +++++++++------------------------------------ + 1 file changed, 10 insertions(+), 42 deletions(-) + +diff --git a/src/gui-wizard-gtk/wizard.c b/src/gui-wizard-gtk/wizard.c +index f5ab343..ce7b742 100644 +--- a/src/gui-wizard-gtk/wizard.c ++++ b/src/gui-wizard-gtk/wizard.c +@@ -197,6 +197,7 @@ static bool check_minimal_bt_rating(const char *event_name); + static const char *get_next_processed_event(GList **events_list); + static const char *setup_next_processed_event(GList **events_list); + static void setup_and_start_even_run(const char *event_name); ++static void on_next_btn_cb(GtkWidget *btn, gpointer user_data); + + static void wrap_fixer(GtkWidget *widget, gpointer data_unused) + { +@@ -1511,54 +1512,21 @@ static gboolean consume_cmd_output(GIOChannel *source, GIOCondition condition, g + terminate_event_chain(); + } + else +- { + gtk_label_set_text(evd->status_label, evd->success_msg); + +- if (!g_expert_mode) +- { +- const char *event = setup_next_processed_event(&g_auto_event_list); +- if (event) +- { +- if (event_need_review(event)) +- { +- if (g_verbose) +- /* do not forward user directly to review page */ +- /* because we want to show to user the results of */ +- /* finished events and we don't have Back button */ +- /* push back event to the beginning of the chain */ +- /* and let the event selector page start event */ +- /* processing */ +- g_auto_event_list = g_list_prepend(g_auto_event_list, +- (gpointer)event); +- else +- /* everything was ok, there is no serious reason */ +- /* to bother user with the logs */ +- /* move gui directly to the review page */ +- gtk_notebook_set_current_page(g_assistant, +- pages[PAGENO_EDIT_COMMENT].page_no); +- } +- else +- { +- free(g_event_selected); +- g_event_selected = xstrdup(event); +- setup_and_start_even_run(g_event_selected); +- } +- } +- } +- +- /*g_source_remove(evd->event_source_id);*/ +- close(evd->fd); +- free_run_event_state(evd->run_state); +- strbuf_free(evd->event_log); +- free(evd); ++ /*g_source_remove(evd->event_source_id);*/ ++ close(evd->fd); ++ free_run_event_state(evd->run_state); ++ strbuf_free(evd->event_log); ++ free(evd); + +- /* Inform abrt-gui that it is a good idea to rescan the directory */ +- kill(getppid(), SIGCHLD); +- } ++ /* Inform abrt-gui that it is a good idea to rescan the directory */ ++ kill(getppid(), SIGCHLD); + +- /* this event was the last event from the chain */ + if (is_reporting_finished()) + update_gui_on_finished_reporting(); ++ else if (retval == 0 && !g_verbose && !g_expert_mode) ++ on_next_btn_cb(GTK_WIDGET(g_btn_next), NULL); + + return FALSE; /* "please remove this event" */ + } +-- +1.7.11.2 + diff --git a/libreport.spec b/libreport.spec index 7c722d6..e249312 100644 --- a/libreport.spec +++ b/libreport.spec @@ -5,11 +5,13 @@ Summary: Generic library for reporting various problems Name: libreport Version: 2.0.12 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: https://fedorahosted.org/abrt/ Source: https://fedorahosted.org/released/abrt/%{name}-%{version}.tar.gz +Patch1: 0001-don-t-try-to-delete-dump-dir-which-doesn-t-exist-rhb.patch +Patch2: 0002-report-gtk-fixed-bug-in-automatic-running-of-next-ev.patch BuildRequires: dbus-devel BuildRequires: gtk3-devel BuildRequires: curl-devel @@ -225,6 +227,8 @@ Plugin to report bugs into anonymous FTP site associated with ticketing system. %prep %setup -q +%patch1 -p1 +%patch2 -p1 %build autoconf @@ -397,6 +401,11 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %config(noreplace) %{_sysconfdir}/libreport/events.d/uploader_event.conf %changelog +* Tue Aug 7 2012 Jakub Filak 2.0.12-2 +- report-gtk: fixed bug in automatic running of next event +- don't try to delete dump dir which doesn't exist rhbz#799909 +- Resolves: #799909 + * Fri Aug 3 2012 Jakub Filak 2.0.12-1 - new upstream release - trac#642: run the next event if the current one finished without errors