]> git.ozlabs.org Git - petitboot/blobdiff - discover/file.c
discover/file: Fix invalid free vs talloc_free
[petitboot] / discover / file.c
index 1ebfe43b10ba02029dbedac3b8fcf0c3a088d7de..4bad0123e12e1154975adbcc0580c0b74e930918 100644 (file)
@@ -103,7 +103,7 @@ int replace_file(const char *filename, char *buf, int len)
        fd = mkstemp(tempfile);
        umask(oldmask);
        if (fd < 0) {
-               free(tempfile);
+               talloc_free(tempfile);
                return fd;
        }
 
@@ -115,6 +115,9 @@ int replace_file(const char *filename, char *buf, int len)
        }
 
        free(tempfile);
+
+       fchmod(fd, 0644);
+
        close(fd);
        return rc;
 }