summaryrefslogtreecommitdiffstats
path: root/src/Daemon/CommLayerServerDBus.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Daemon/CommLayerServerDBus.cpp')
-rw-r--r--src/Daemon/CommLayerServerDBus.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/Daemon/CommLayerServerDBus.cpp b/src/Daemon/CommLayerServerDBus.cpp
index 1e159c88..9b38824c 100644
--- a/src/Daemon/CommLayerServerDBus.cpp
+++ b/src/Daemon/CommLayerServerDBus.cpp
@@ -97,7 +97,17 @@ DBus::Message CCommLayerServerDBus::_Report_stub(const DBus::CallMessage &call)
const char* sender = call.sender();
unsigned long unix_uid = m_pConn->sender_unix_uid(sender);
VERB1 log("got %s(...) call from %s, uid %lu", "Report", sender, unix_uid);
- report_status_t argout1 = Report(argin1, to_string(unix_uid));
+ report_status_t argout1;
+ try
+ {
+ argout1 = Report(argin1, to_string(unix_uid));
+ }
+ catch(CABRTException &e)
+ {
+ DBus::ErrorMessage reply(call, DBUS_ERROR_FAILED, e.what().c_str());
+ return reply;
+ }
+
DBus::ReturnMessage reply(call);
DBus::MessageIter wi = reply.writer();