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