wc: fix swapped -c and -m
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
1f4a987d47
commit
1336f89d59
@ -81,11 +81,11 @@
|
|||||||
* column order in "wc -cmlwL" output:
|
* column order in "wc -cmlwL" output:
|
||||||
*/
|
*/
|
||||||
enum {
|
enum {
|
||||||
WC_LINES = 0,
|
WC_LINES = 0, /* -l */
|
||||||
WC_WORDS = 1,
|
WC_WORDS = 1, /* -w */
|
||||||
WC_UNICHARS = 2,
|
WC_UNICHARS = 2, /* -m */
|
||||||
WC_CHARS = 3,
|
WC_BYTES = 3, /* -c */
|
||||||
WC_LENGTH = 4,
|
WC_LENGTH = 4, /* -L */
|
||||||
NUM_WCS = 5,
|
NUM_WCS = 5,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -104,10 +104,10 @@ int wc_main(int argc UNUSED_PARAM, char **argv)
|
|||||||
|
|
||||||
init_unicode();
|
init_unicode();
|
||||||
|
|
||||||
print_type = getopt32(argv, "lwcmL");
|
print_type = getopt32(argv, "lwmcL");
|
||||||
|
|
||||||
if (print_type == 0) {
|
if (print_type == 0) {
|
||||||
print_type = (1 << WC_LINES) | (1 << WC_WORDS) | (1 << WC_CHARS);
|
print_type = (1 << WC_LINES) | (1 << WC_WORDS) | (1 << WC_BYTES);
|
||||||
}
|
}
|
||||||
|
|
||||||
argv += optind;
|
argv += optind;
|
||||||
@ -157,7 +157,7 @@ int wc_main(int argc UNUSED_PARAM, char **argv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Cater for -c and -m */
|
/* Cater for -c and -m */
|
||||||
++counts[WC_CHARS];
|
++counts[WC_BYTES];
|
||||||
if (unicode_status != UNICODE_ON /* every byte is a new char */
|
if (unicode_status != UNICODE_ON /* every byte is a new char */
|
||||||
|| (c & 0xc0) != 0x80 /* it isn't a 2nd+ byte of a Unicode char */
|
|| (c & 0xc0) != 0x80 /* it isn't a 2nd+ byte of a Unicode char */
|
||||||
) {
|
) {
|
||||||
|
Loading…
Reference in New Issue
Block a user