aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/generic/putenv.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1999-07-29 20:40:05 +0000
committerUlrich Drepper <drepper@redhat.com>1999-07-29 20:40:05 +0000
commitde4a40d07fd7bed8f57a49a22bf8c110751e80d6 (patch)
treedb8e58d4adfecf1940355709e6a8f115ebbb411d /sysdeps/generic/putenv.c
parenta827898574892dce3e83ed4b08a51927c16445a5 (diff)
downloadglibc-de4a40d07fd7bed8f57a49a22bf8c110751e80d6.tar
glibc-de4a40d07fd7bed8f57a49a22bf8c110751e80d6.tar.gz
glibc-de4a40d07fd7bed8f57a49a22bf8c110751e80d6.tar.bz2
glibc-de4a40d07fd7bed8f57a49a22bf8c110751e80d6.zip
Update.
* sysdeps/generic/setenv.c: Move setenv code in new function __add_to_environ. Add new parameter specifying already constructed string for the environment. (setenv): Call __add_to_environ with new parameter set to NULL. (unsetenv): Really test all elements for duplicated name. Missed those cases where the two are following each other. * sysdeps/generic/putenv.c: Use __add_to_environ instead of setenv. * include/stdlib.h: Add prototype of __add_to_environ. * stdlib/tst-environ.c: New file.
Diffstat (limited to 'sysdeps/generic/putenv.c')
-rw-r--r--sysdeps/generic/putenv.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sysdeps/generic/putenv.c b/sysdeps/generic/putenv.c
index 3fcd5f93a8..75fafad06d 100644
--- a/sysdeps/generic/putenv.c
+++ b/sysdeps/generic/putenv.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 94, 95, 96, 97, 98 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 94, 95, 96, 97, 98, 99 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -64,7 +64,7 @@ putenv (string)
memcpy (name, string, name_end - string);
name[name_end - string] = '\0';
#endif
- return __setenv (name, name_end + 1, 1);
+ return __add_to_environ (name, NULL, string, 1);
}
__unsetenv (string);