X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Flogin%2Flogind-session.c;h=d7c074bdce8b4022bcbdf1675793b57fd944ff20;hp=d4742e1134475671843a3ebe5de5a63254be825f;hb=8fe63cd4f16e1e7cdf528ff053f8eb4da7848455;hpb=9fadd4cabf57285e58272ddb75147d8d52d4c5a9 diff --git a/src/login/logind-session.c b/src/login/logind-session.c index d4742e113..d7c074bdc 100644 --- a/src/login/logind-session.c +++ b/src/login/logind-session.c @@ -915,10 +915,11 @@ void session_add_to_gc_queue(Session *s) { SessionState session_get_state(Session *s) { assert(s); + /* always check closing first */ if (s->stopping || s->timer_event_source) return SESSION_CLOSING; - if (s->scope_job) + if (s->scope_job || s->fifo_fd < 0) return SESSION_OPENING; if (session_is_active(s))