From 134b6f47c67e0a9aeca14d37dd73127c91932c1a Mon Sep 17 00:00:00 2001 From: Nikola Pajkovsky Date: Mon, 30 Nov 2009 15:36:44 +0100 Subject: a few fixes in automatic reporter --- src/Daemon/Daemon.cpp | 2 +- src/Daemon/MiddleWare.cpp | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) (limited to 'src/Daemon') diff --git a/src/Daemon/Daemon.cpp b/src/Daemon/Daemon.cpp index 0e80c25..666a756 100644 --- a/src/Daemon/Daemon.cpp +++ b/src/Daemon/Daemon.cpp @@ -495,7 +495,7 @@ static gboolean handle_inotify_cb(GIOChannel *gio, GIOCondition condition, gpoin /* Send dbus signal */ { // I don't see any usable usecase for other plugin to be able automatic report. - if (analyzer_has_AutoReportUIDs(/*crashinfo[CD_MWANALYZER][CD_CONTENT].c_str()*/"Kerneloops",crashinfo[CD_UID][CD_CONTENT].c_str())) + if (analyzer_has_AutoReportUIDs(crashinfo[CD_MWANALYZER][CD_CONTENT].c_str(), crashinfo[CD_UID][CD_CONTENT].c_str())) { map_crash_report_t crash_report; VERB3 log("Create autoreport for user with uid %s",crashinfo[CD_UID][CD_CONTENT].c_str()); diff --git a/src/Daemon/MiddleWare.cpp b/src/Daemon/MiddleWare.cpp index 69d36bf..7b0eea5 100644 --- a/src/Daemon/MiddleWare.cpp +++ b/src/Daemon/MiddleWare.cpp @@ -656,6 +656,7 @@ bool analyzer_has_InformAllUsers(const char *analyzer_name) bool analyzer_has_AutoReportUIDs(const char *analyzer_name, const char* uid) { + CAnalyzer* analyzer = g_pPluginManager->GetAnalyzer(analyzer_name); if (!analyzer) { @@ -667,6 +668,10 @@ bool analyzer_has_AutoReportUIDs(const char *analyzer_name, const char* uid) if (it == settings.end()) return false; + if ((strcmp(analyzer_name, "Kerneloops") == 0) && (strcmp(uid, "-1") == 0)) + return true; + +/* vector_string_t logins; parse_args(it->second.c_str(), logins); @@ -674,19 +679,16 @@ bool analyzer_has_AutoReportUIDs(const char *analyzer_name, const char* uid) if (size == 0) return false; - if ((strcmp(analyzer_name, "Kerneloops") == 0) && (strcmp(uid, "-1") == 0)) - return true; - uid_t id; for (uint32_t ii = 0; ii < size; ii++) { - if (!xgetpwnam(logins[ii].c_str(), &id)) + if (!getuidbyname(logins[ii].c_str(), &id)) continue; if (strcmp(uid, to_string(id).c_str()) == 0) return true; } - +*/ return false; } -- cgit