- /* The following sscanf must use the C locale. */
- 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]);
- setlocale (LC_NUMERIC, old_locale);
- free (old_locale);
- if (count < 1)
- return -1;