fix nl_langinfo table for LC_TIME era-related items
[musl] / src / stdio / tmpfile.c
index c856994..525090a 100644 (file)
@@ -16,8 +16,13 @@ FILE *tmpfile(void)
                __randname(s+13);
                fd = sys_open(s, O_RDWR|O_CREAT|O_EXCL, 0600);
                if (fd >= 0) {
-                       f = __fdopen(fd, "w+");
+#ifdef SYS_unlink
                        __syscall(SYS_unlink, s);
+#else
+                       __syscall(SYS_unlinkat, AT_FDCWD, s, 0);
+#endif
+                       f = __fdopen(fd, "w+");
+                       if (!f) __syscall(SYS_close, fd);
                        return f;
                }
        }