about summary refs log tree commit diff
path: root/localedata/bug-setlocale1.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@hack.frob.com>2015-03-05 12:58:49 -0800
committerRoland McGrath <roland@hack.frob.com>2015-03-05 12:58:49 -0800
commit9162c01d09c327ae2e7c3a5148307e8018792c51 (patch)
tree11b64fb3aedad59ec52f5f775f70d1291c34b872 /localedata/bug-setlocale1.c
parent209826bcf2e5d1634adf5672e265eec5e5c07e83 (diff)
downloadglibc-9162c01d09c327ae2e7c3a5148307e8018792c51.tar.gz
glibc-9162c01d09c327ae2e7c3a5148307e8018792c51.tar.xz
glibc-9162c01d09c327ae2e7c3a5148307e8018792c51.zip
Avoid re-exec-self in bug-setlocale1.
Diffstat (limited to 'localedata/bug-setlocale1.c')
-rw-r--r--localedata/bug-setlocale1.c40
1 files changed, 2 insertions, 38 deletions
diff --git a/localedata/bug-setlocale1.c b/localedata/bug-setlocale1.c
index dc7f6f3f08..546ea7beb8 100644
--- a/localedata/bug-setlocale1.c
+++ b/localedata/bug-setlocale1.c
@@ -7,44 +7,8 @@
 
 
 static int
-do_test (int argc, char *argv[])
+do_test (void)
 {
-  if (argc > 1)
-    {
-      char *newargv[5];
-      int i;
-      if (argc != 2 && argc != 5)
-	{
-	  printf ("wrong number of arguments (%d)\n", argc);
-	  return 1;
-	}
-
-      for (i = 0; i < (argc == 5 ? 4 : 1); i++)
-	newargv[i] = argv[i + 1];
-      newargv[i] = NULL;
-
-      char *env[3];
-      env[0] = (char *) "LC_CTYPE=de_DE.UTF-8";
-      char *loc = getenv ("LOCPATH");
-      if (loc == NULL || loc[0] == '\0')
-	{
-	  puts ("LOCPATH not set");
-	  return 1;
-	}
-      asprintf (&env[1], "LOCPATH=%s", loc);
-      if (env[1] == NULL)
-	{
-	  puts ("asprintf failed");
-	  return 1;
-	}
-      env[2] = NULL;
-
-      execve (newargv[0], newargv, env);
-
-      puts ("execve returned");
-      return 1;
-    }
-
   int result = 0;
 
   char *a = setlocale (LC_ALL, "");
@@ -128,5 +92,5 @@ do_test (int argc, char *argv[])
   return result;
 }
 
-#define TEST_FUNCTION do_test (argc, argv)
+#define TEST_FUNCTION do_test ()
 #include "../test-skeleton.c"