summaryrefslogtreecommitdiff
path: root/package/busybox/patches/011-utmp-segfault-mips64-fix.patch
blob: 428ffca3858caaccf6d12d2282c62a47015096be (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
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)