X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fgetloadavg.c;h=ed079b2ec243f20b13ff380c7f23136b90c5e09a;hb=f8893f198d71f38bd66d23ff6ea712eb79376313;hp=dce4117f087623eae5651f3393cb8c9bf5b5e869;hpb=f68c57a7466a299f333352b6d6c958a3a36c0e3c;p=gnulib.git diff --git a/lib/getloadavg.c b/lib/getloadavg.c index dce4117f0..ed079b2ec 100644 --- a/lib/getloadavg.c +++ b/lib/getloadavg.c @@ -606,7 +606,9 @@ getloadavg (double loadavg[], int nelem) return -1; /* The following sscanf must use the C locale. */ - old_locale = xstrdup (setlocale (LC_NUMERIC, NULL)); + old_locale = setlocale (LC_NUMERIC, NULL); + if (old_locale) + old_locale = xstrdup (old_locale); setlocale (LC_NUMERIC, "C"); count = sscanf (ldavgbuf, "%lf %lf %lf", &load_ave[0], &load_ave[1], &load_ave[2]);