diff options
author | Ulrich Drepper <drepper@redhat.com> | 1998-05-20 10:50:03 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1998-05-20 10:50:03 +0000 |
commit | a709dd439a010a88e6e8ae94583e71296008b89e (patch) | |
tree | a0c3fe9835f3a05c1ed61ba01d98ee90bbe858f5 /sysdeps/generic/setenv.c | |
parent | b0a01055eb0ff324fd5e2b44fa9687035e5f3204 (diff) | |
download | glibc-a709dd439a010a88e6e8ae94583e71296008b89e.tar glibc-a709dd439a010a88e6e8ae94583e71296008b89e.tar.gz glibc-a709dd439a010a88e6e8ae94583e71296008b89e.tar.bz2 glibc-a709dd439a010a88e6e8ae94583e71296008b89e.zip |
Update.
1998-05-20 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* Makeconfig (rpath-link): Add resolvobjdir.
(resolvobjdir): New variable.
Reported by Peter Breitenlohner <peb@mppmu.mpg.de> [fixes PR libc/633].
1998-05-20 09:36 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-close.c: Call shared object terminators at the right time.
Patch by Philippe Troin <phil@fifi.org>.
1998-05-20 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Make-dist (+tsrcs): Also add *.map for every member of
$(extra-libs).
* Makefile (distribute): Don't distribute scripts/printsources and
scripts/=__ify. Distribute FAQ.in.
(rpm/%): Don't pass subdirs to sub-make.
* timezone/Makefile: Protect inclusion of z.* by $(avoid-generated)
instead of $(no_deps).
1998-05-19 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/generic/setenv.c: Protect against GNU C extension.
(KNOWN_VALUE, STORE_VALUE): Do it right.
(setenv): Remove unused variable.
1998-05-18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* timezone/Makefile (tz-cflags): Define TM_GMTOFF and TM_ZONE.
(CFLAGS-zdump.c): Add $(tz-cflags).
* timezone/zdump.c (abbr): Use TM_ZONE if defined. Add const to
return type.
1998-05-18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* time/tzfile.c (__tzfile_compute): Undo last change. Instead
take struct tm parameter and set tm_isdst, tm_zone and tm_offset
if use_localtime.
* time/tzset.c: Update prototype of __tzfile_compute.
(__tz_convert): Pass tp to __tzfile_compute. Don't set tm_isdst,
tm_zone and tm_offset here if __use_tzfile.
1998-05-19 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules: Install libc.a even if there are no object file.
1998-05-18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (do-makelib): Don't force creating library from
scratch, to avoid wasting time and space and to get correct
behaviour if $(subdirs) is incomplete.
1998-05-19 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (do-stamp): Make it work when building in source
directory.
Diffstat (limited to 'sysdeps/generic/setenv.c')
-rw-r--r-- | sysdeps/generic/setenv.c | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/sysdeps/generic/setenv.c b/sysdeps/generic/setenv.c index 22ea7e551f..b2ebbadfaa 100644 --- a/sysdeps/generic/setenv.c +++ b/sysdeps/generic/setenv.c @@ -69,7 +69,8 @@ __libc_lock_define_initialized (static, envlock) allow arbitrary many changes of the environment given that the used values are from a small set. Outside glibc this will eat up all memory after a while. */ -#if defined _LIBC || (defined HAVE_SEARCH_H && defined HAVE_TSEARCH) +#if defined _LIBC || (defined HAVE_SEARCH_H && defined HAVE_TSEARCH \ + && defined __GNUC__) # define USE_TSEARCH 1 # include <search.h> @@ -79,18 +80,11 @@ static void *known_values; # define KNOWN_VALUE(Str) \ ({ \ - void **value = tfind (Str, &known_values, (__compar_fn_t) strcmp); \ - if (value != NULL) \ - value = *(const char **) value; \ - value; \ + void *value = tfind (Str, &known_values, (__compar_fn_t) strcmp); \ + value != NULL ? *(char **) value : NULL; \ }) # define STORE_VALUE(Str) \ - ({ \ - void **value = tsearch (Str, &known_values, (__compar_fn_t) strcmp); \ - if (value != NULL) \ - value = *(const char **) value; \ - value; \ - }) + tsearch (Str, &known_values, (__compar_fn_t) strcmp) #else # undef USE_TSEARCH @@ -186,7 +180,6 @@ setenv (name, value, replace) } else if (replace) { - size_t len = strlen (*ep); char *new_value; char *np; |