X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flogin%2Flogind-inhibit.c;h=ec6a722ce3e65ed7b1517c7d65098d249aaad7b6;hb=6a70535669f9016056c1ad8bcb21e1fd14c2141a;hp=3bc4642071dc09745f8560b7206c6634479bc88b;hpb=cc3773810855956bad92337cee8fa193584ab62e;p=elogind.git diff --git a/src/login/logind-inhibit.c b/src/login/logind-inhibit.c index 3bc464207..ec6a722ce 100644 --- a/src/login/logind-inhibit.c +++ b/src/login/logind-inhibit.c @@ -22,7 +22,6 @@ #include #include #include -#include #include #include "util.h" @@ -46,7 +45,7 @@ Inhibitor* inhibitor_new(Manager *m, const char* id) { return NULL; } - i->id = path_get_file_name(i->state_file); + i->id = basename(i->state_file); if (hashmap_put(m->inhibitors, i->id, i) < 0) { free(i->state_file); @@ -305,7 +304,7 @@ int inhibitor_create_fifo(Inhibitor *i) { if (r < 0) return r; - r = sd_event_source_set_priority(i->event_source, SD_PRIORITY_IDLE); + r = sd_event_source_set_priority(i->event_source, SD_EVENT_PRIORITY_IDLE); if (r < 0) return r; } @@ -373,7 +372,8 @@ bool manager_is_inhibited( dual_timestamp *since, bool ignore_inactive, bool ignore_uid, - uid_t uid) { + uid_t uid, + Inhibitor **offending) { Inhibitor *i; Iterator j; @@ -401,6 +401,9 @@ bool manager_is_inhibited( ts = i->since; inhibited = true; + + if (offending) + *offending = i; } if (since)