diff -Nur busybox-1.20.2.orig/libbb/utmp.c busybox-1.20.2/libbb/utmp.c --- busybox-1.20.2.orig/libbb/utmp.c 2012-06-26 15:35:45.000000000 +0200 +++ busybox-1.20.2/libbb/utmp.c 2012-09-24 20:25:27.000000000 +0200 @@ -10,8 +10,14 @@ static void touch(const char *filename) { - if (access(filename, R_OK | W_OK) == -1) - close(open(filename, O_WRONLY | O_CREAT, 0664)); + int c = 0; + + if (access(filename, R_OK | W_OK) == -1) { + c=open(filename, O_WRONLY | O_CREAT, 0664); + if (c > 0) { + close(c); + } + } } void FAST_FUNC write_new_utmp(pid_t pid, int new_type, const char *tty_name, const char *username, const char *hostname)