[PATCH v2 2/4] tst-fopen-threaded.c: Delete temporary file
Adhemerval Zanella Netto
adhemerval.zanella@linaro.org
Mon Aug 4 18:39:02 GMT 2025
On 19/07/25 11:43, H.J. Lu wrote:
> Update tst-fopen-threaded.c to call support_create_temp_directory to
> create a temporary directory and open "file" in the temporary directory,
> instead of using /tmp/openclosetest and leaving it behind.
>
> This partially fixes BZ #33182.
>
> Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
LGTM, thanks.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
> ---
> sysdeps/pthread/tst-fopen-threaded.c | 14 ++++++++++++--
> 1 file changed, 12 insertions(+), 2 deletions(-)
>
> diff --git a/sysdeps/pthread/tst-fopen-threaded.c b/sysdeps/pthread/tst-fopen-threaded.c
> index ade58ad19e..c17f1eaa13 100644
> --- a/sysdeps/pthread/tst-fopen-threaded.c
> +++ b/sysdeps/pthread/tst-fopen-threaded.c
> @@ -34,11 +34,13 @@
> #include <stdio.h>
> #include <string.h>
> #include <unistd.h>
> +#include <stdlib.h>
>
> #include <support/check.h>
> #include <support/temp_file.h>
> #include <support/xstdio.h>
> #include <support/xthread.h>
> +#include <support/support.h>
>
> #define NUM_THREADS 100
> #define ITERS 10
> @@ -111,7 +113,8 @@ threadOpenCloseRoutine (void *argv)
> /* Wait for all threads to be ready to call fopen and fclose. */
> xpthread_barrier_wait (&barrier);
>
> - FILE *fd = xfopen ("/tmp/openclosetest", "w+");
> + char *file = (char *) argv;
> + FILE *fd = xfopen (file, "w+");
> xfclose (fd);
> return NULL;
> }
> @@ -235,6 +238,10 @@ do_test (void)
> xfclose (fd_file);
> }
>
> + char *tempdir = support_create_temp_directory ("openclosetest-");
> + char *file = xasprintf ("%s/file", tempdir);
> + add_temp_file (file);
> +
> /* Test 3: Concurrent open/close. */
> for (int reps = 1; reps <= ITERS; reps++)
> {
> @@ -243,7 +250,7 @@ do_test (void)
> {
> threads[i] =
> xpthread_create (support_small_stack_thread_attribute (),
> - threadOpenCloseRoutine, NULL);
> + threadOpenCloseRoutine, file);
> }
> for (int i = 0; i < NUM_THREADS; i++)
> {
> @@ -252,6 +259,9 @@ do_test (void)
> xpthread_barrier_destroy (&barrier);
> }
>
> + free (file);
> + free (tempdir);
> +
> return 0;
> }
>
More information about the Libc-alpha
mailing list