Hello community, here is the log from the commit of package procps for openSUSE:Factory checked in at 2014-12-06 13:45:37 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/procps (Old) and /work/SRC/openSUSE:Factory/.procps.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "procps" Changes: -------- --- /work/SRC/openSUSE:Factory/procps/procps.changes 2014-09-12 17:05:58.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.procps.new/procps.changes 2014-12-06 13:45:26.000000000 +0100 @@ -1,0 +2,6 @@ +Fri Dec 5 10:07:22 UTC 2014 - werner@suse.de + +- Add patch procps-ng-3.3.9-errno.patch to avoid leftover errno + from setlocale() (bsc#908516) + +------------------------------------------------------------------- New: ---- procps-ng-3.3.9-errno.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ procps.spec ++++++ --- /var/tmp/diff_new_pack.HtWoVn/_old 2014-12-06 13:45:27.000000000 +0100 +++ /var/tmp/diff_new_pack.HtWoVn/_new 2014-12-06 13:45:27.000000000 +0100 @@ -79,6 +79,8 @@ Patch28: procps-ng-3.3.8-vmstat-terabyte.dif # PATCH-FIX-SUSE -- Ignore scan_unevictable_pages in sysctl Patch31: procps-ng-3.3.8-ignore-scan_unevictable_pages.patch +# PATCH-FIX-SUSE -- Avoid errno set by setlocale() +Patch32: procps-ng-3.3.9-errno.patch Patch60: 0024-sysctl-system-loads-default-config-file.patch Patch61: 0025-Split-help-lines-to-help-translators.patch @@ -199,6 +201,7 @@ %patch21 %patch28 %patch31 -p1 +%patch32 %patch60 %patch61 %patch62 ++++++ procps-ng-3.3.9-errno.patch ++++++ setlocale() sets errno to ENOENT ... open("/usr/lib/locale/de_DE.UTF-8/LC_NUMERIC", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/usr/lib/locale/de_DE.utf8/LC_NUMERIC", O_RDONLY|O_CLOEXEC) = 3 and this causes a problem later on (bsc#908516) --- free.c | 6 ++++++ 1 file changed, 6 insertions(+) +++ free.c 2014-12-05 10:00:37.282018794 +0000 @@ -189,6 +189,7 @@ int main(int argc, char **argv) int c, flags = 0; char *endptr; struct commandline_arguments args; + int errsv; /* * For long options that have no equivalent short option, use a @@ -226,10 +227,12 @@ int main(int argc, char **argv) #ifdef HAVE_PROGRAM_INVOCATION_NAME program_invocation_name = program_invocation_short_name; #endif + errsv = errno; setlocale (LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); atexit(close_stdout); + errno = errsv; while ((c = getopt_long(argc, argv, "bkmghlotc:s:V", longopts, NULL)) != -1) switch (c) { @@ -265,12 +268,15 @@ int main(int argc, char **argv) break; case 's': flags |= FREE_REPEAT; + errsv = errno; + errno = 0; args.repeat_interval = (1000000 * strtof(optarg, &endptr)); if (errno || optarg == endptr || (endptr && *endptr)) xerrx(EXIT_FAILURE, _("seconds argument `%s' failed"), optarg); if (args.repeat_interval < 1) xerrx(EXIT_FAILURE, _("seconds argument `%s' is not positive number"), optarg); + errno = errsv; break; case 'c': flags |= FREE_REPEAT; -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org