summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2010-04-24 00:31:21 +0200
committerLennart Poettering <lennart@poettering.net>2010-04-24 00:31:21 +0200
commitd7fc909db3346b58a0ecce9c18d5ae68ffe7cb8b (patch)
tree23f4394f1553a9577cb9b1189910b55c7f87447f
parent858a9b0a99db40ef22676808c0e19e024467f90c (diff)
utmp: if we don't have a previous runleve, just store 0
-rw-r--r--utmp-wtmp.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/utmp-wtmp.c b/utmp-wtmp.c
index 1650d10eba..0cc9ceca84 100644
--- a/utmp-wtmp.c
+++ b/utmp-wtmp.c
@@ -193,8 +193,12 @@ int utmp_put_runlevel(usec_t timestamp, int runlevel, int previous) {
if (previous <= 0) {
/* Find the old runlevel automatically */
- if ((r = utmp_get_runlevel(&previous, NULL)) < 0)
- return r;
+ if ((r = utmp_get_runlevel(&previous, NULL)) < 0) {
+ if (r != -ESRCH)
+ return r;
+
+ previous = 0;
+ }
if (previous == runlevel)
return 0;