summaryrefslogtreecommitdiffstats
path: root/src/daemon
diff options
context:
space:
mode:
authorDenys Vlasenko <dvlasenk@redhat.com>2010-11-15 16:58:16 +0100
committerDenys Vlasenko <dvlasenk@redhat.com>2010-11-15 16:58:16 +0100
commit46d60e990d57758c1d72ed76efdeee19e55996f1 (patch)
tree6563abd994c198d3fe699602d5a694fedbdd6e0f /src/daemon
parent2cf0d770b66b6c6ce50af2767f575db552cd784c (diff)
downloadabrt-46d60e990d57758c1d72ed76efdeee19e55996f1.tar.gz
abrt-46d60e990d57758c1d72ed76efdeee19e55996f1.tar.xz
abrt-46d60e990d57758c1d72ed76efdeee19e55996f1.zip
Make "abrt-handle-crashdump -e BOGUS_EVENT" fail (also fail if asked over dbus)
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
Diffstat (limited to 'src/daemon')
-rw-r--r--src/daemon/MiddleWare.cpp10
-rw-r--r--src/daemon/abrt-handle-crashdump.c2
2 files changed, 9 insertions, 3 deletions
diff --git a/src/daemon/MiddleWare.cpp b/src/daemon/MiddleWare.cpp
index a29f2f3d..329c04ab 100644
--- a/src/daemon/MiddleWare.cpp
+++ b/src/daemon/MiddleWare.cpp
@@ -319,6 +319,10 @@ report_status_t Report(const map_crash_data_t& client_report,
l_state.last_line = NULL;
int r = run_event(run_state, dump_dir_name, plugin_name.c_str());
+ if (r == -1)
+ {
+ l_state.last_line = xasprintf("Error: no processing is specified for event '%s'", plugin_name.c_str());
+ }
if (r == 0)
{
at_least_one_reporter_succeeded = true;
@@ -347,9 +351,9 @@ report_status_t Report(const map_crash_data_t& client_report,
{
char *s = (char*)li->data;
/* Need to make a copy: just cutting s at '=' and unsetenv'ing
- * the result would be a bug! s _itself_ is in environment now,
- * we must not modify it there!
- */
+ * the result would be a bug! s _itself_ is in environment now,
+ * we must not modify it there!
+ */
char *name = xstrndup(s, strchrnul(s, '=') - s);
VERB3 log("Unexporting '%s'", name);
unsetenv(name);
diff --git a/src/daemon/abrt-handle-crashdump.c b/src/daemon/abrt-handle-crashdump.c
index c823af51..02463ae9 100644
--- a/src/daemon/abrt-handle-crashdump.c
+++ b/src/daemon/abrt-handle-crashdump.c
@@ -89,6 +89,8 @@ int main(int argc, char **argv)
struct run_event_state *run_state = new_run_event_state();
run_state->logging_callback = do_log;
int r = run_event(run_state, dump_dir_name ? dump_dir_name : ".", event);
+ if (r == -1)
+ error_msg_and_die("No actions are found for event '%s'", event);
free_run_event_state(run_state);
return r;