This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] libio/tst-fopenloc: Use xsetlocale, xfopen, and xfclose
- From: Florian Weimer <fweimer at redhat dot com>
- To: Arjun Shankar <arjun dot is at lostca dot se>
- Cc: libc-alpha at sourceware dot org
- Date: Mon, 11 Nov 2019 16:15:17 +0100
- Subject: Re: [PATCH] libio/tst-fopenloc: Use xsetlocale, xfopen, and xfclose
- References: <20191111144052.GB5229@aloka.lostca.se>
* Arjun Shankar:
> diff --git a/libio/tst-fopenloc.c b/libio/tst-fopenloc.c
> index e9548c57ac..797540da04 100644
> --- a/libio/tst-fopenloc.c
> +++ b/libio/tst-fopenloc.c
> @@ -25,14 +25,11 @@
> #include <string.h>
> #include <wchar.h>
> #include <sys/resource.h>
> +#include <support/support.h>
> +#include <support/xstdio.h>
>
> static const char inputfile[] = "../iconvdata/testdata/ISO-8859-1";
>
> -static int do_test(void);
> -
> -#define TEST_FUNCTION do_test ()
> -#include "../test-skeleton.c"
> -
> static int
> do_bz17916 (void)
> {
> @@ -66,14 +63,9 @@ do_test (void)
>
> mtrace ();
>
> - setlocale (LC_ALL, "de_DE.UTF-8");
> + xsetlocale (LC_ALL, "de_DE.UTF-8");
>
> - fp = fopen (inputfile, "r,ccs=ISO-8859-1");
> - if (fp == NULL)
> - {
> - printf ("cannot open \"%s\": %s\n", inputfile, strerror (errno));
> - exit (1);
> - }
> + fp = xfopen (inputfile, "r,ccs=ISO-8859-1");
>
> while (! feof_unlocked (fp))
> {
> @@ -85,7 +77,9 @@ do_test (void)
> fputws (buf, stdout);
> }
>
> - fclose (fp);
> + xfclose (fp);
>
> return do_bz17916 ();
> }
> +
> +#include <support/test-driver.c>
This patch looks good to me.
(Lack of error checking in setlocale can lead to weird test failures.)
Thanks,
Florian