From: Eric Blake Date: Thu, 7 May 2009 20:27:37 +0000 (-0600) Subject: truncate: fix bug in use of isspace X-Git-Tag: v7.5~133 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=60e7332dc08eb0a52822ec192aad5dc50feca7fd;p=platform%2Fupstream%2Fcoreutils.git truncate: fix bug in use of isspace * src/truncate.c (main): Pass unsigned characters to isspace. * NEWS: Mention this. --- diff --git a/NEWS b/NEWS index 6f2a401..31f1b1a 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,10 @@ GNU coreutils NEWS -*- outline -*- * Noteworthy changes in release ?.? (????-??-??) [?] +** Bug fixes + + truncate -s failed to skip all whitespace in the option argument in + some locales. * Noteworthy changes in release 7.4 (2009-05-07) [stable] diff --git a/src/truncate.c b/src/truncate.c index 06fa03a..31b3aa6 100644 --- a/src/truncate.c +++ b/src/truncate.c @@ -1,5 +1,5 @@ /* truncate -- truncate or extend the length of files. - Copyright (C) 2008 Free Software Foundation, Inc. + Copyright (C) 2008-2009 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -287,7 +287,7 @@ main (int argc, char **argv) case 's': /* skip any whitespace */ - while (isspace (*optarg)) + while (isspace (to_uchar (*optarg))) optarg++; switch (*optarg) { @@ -309,7 +309,7 @@ main (int argc, char **argv) break; } /* skip any whitespace */ - while (isspace (*optarg)) + while (isspace (to_uchar (*optarg))) optarg++; if (*optarg == '+' || *optarg == '-') {