fixies for bugs introduced in the last build

- Resolves: #799909
This commit is contained in:
Jakub Filak 2012-08-07 10:40:57 +02:00
parent e44c6c170d
commit abb44e01e5
3 changed files with 159 additions and 1 deletions

View File

@ -0,0 +1,58 @@
From a4a6498eea98356b1580411136e57c7518a58b79 Mon Sep 17 00:00:00 2001
From: Jiri Moskovcak <jmoskovc@redhat.com>
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

View File

@ -0,0 +1,91 @@
From f86f1d1a222b0e018601065395be169a4beb2f5e Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
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 <jfilak@redhat.com>
---
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

View File

@ -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 <jfilak@redhat.com> 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 <jfilak@redhat.com> 2.0.12-1
- new upstream release
- trac#642: run the next event if the current one finished without errors