]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
support_blob_repeat: Call mkstemp directory for the backing file
authorFlorian Weimer <fweimer@redhat.com>
Tue, 30 Oct 2018 12:55:50 +0000 (13:55 +0100)
committerFlorian Weimer <fweimer@redhat.com>
Tue, 30 Oct 2018 12:55:50 +0000 (13:55 +0100)
This avoids a warning during post-test cleanup.

ChangeLog
support/blob_repeat.c

index 734defac22f651879e1d327d8266684305d2ada7..eefe1ce3978f581912f3145d0299465932a04300 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2018-10-30  Florian Weimer  <fweimer@redhat.com>
+
+       * support/blob_repeat.c (allocate_big): Call mkstemp directly.
+
 2018-10-30  Florian Weimer  <fweimer@redhat.com>
 
        * stdlib/tst-strtod-overflow.c (do_test): Switch to
index da4ca830436176b8d6ebad5150d5d23c1f3c3ff4..16c1e448b990e386d900cd97a3cde28fc1589316 100644 (file)
@@ -23,8 +23,8 @@
 #include <string.h>
 #include <support/blob_repeat.h>
 #include <support/check.h>
+#include <support/test-driver.h>
 #include <support/support.h>
-#include <support/temp_file.h>
 #include <support/xunistd.h>
 #include <sys/mman.h>
 #include <unistd.h>
@@ -155,13 +155,17 @@ allocate_big (size_t total_size, const void *element, size_t element_size,
   if (target == MAP_FAILED)
     return (struct support_blob_repeat) { 0 };
 
-  /* Create the backing file for the repeated mapping.  */
+  /* Create the backing file for the repeated mapping.  Call mkstemp
+     directly to remove the resources backing the temporary file
+     immediately, once support_blob_repeat_free is called.  Using
+     create_temp_file would result in a warning during post-test
+     cleanup.  */
   int fd;
   {
-    char *temppath;
-    fd = create_temp_file ("support_blob_repeat-", &temppath);
+    char *temppath = xasprintf ("%s/support_blob_repeat-XXXXXX", test_dir);
+    fd = mkstemp (temppath);
     if (fd < 0)
-      FAIL_EXIT1 ("create_temp_file: %m");
+      FAIL_EXIT1 ("mkstemp (\"%s\"): %m", temppath);
     xunlink (temppath);
     free (temppath);
   }