diff options
Diffstat (limited to 'libc/upstream-openbsd/lib/libc/gdtoa/strtodg.c')
-rw-r--r-- | libc/upstream-openbsd/lib/libc/gdtoa/strtodg.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libc/upstream-openbsd/lib/libc/gdtoa/strtodg.c b/libc/upstream-openbsd/lib/libc/gdtoa/strtodg.c index defb4740e..753f6bf0e 100644 --- a/libc/upstream-openbsd/lib/libc/gdtoa/strtodg.c +++ b/libc/upstream-openbsd/lib/libc/gdtoa/strtodg.c @@ -363,7 +363,10 @@ strtodg static int dplen; if (!(s0 = decimalpoint_cache)) { s0 = localeconv()->decimal_point; - decimalpoint_cache = strdup(s0); + if ((decimalpoint_cache = (char*)MALLOC(strlen(s0) + 1))) { + strlcpy(decimalpoint_cache, s0, strlen(s0) + 1); + s0 = decimalpoint_cache; + } dplen = strlen(s0); } decimalpoint = (char*)s0; |