diff options
Diffstat (limited to 'core/coreutils/coreutils-uniq.patch.new')
-rw-r--r-- | core/coreutils/coreutils-uniq.patch.new | 52 |
1 files changed, 26 insertions, 26 deletions
diff --git a/core/coreutils/coreutils-uniq.patch.new b/core/coreutils/coreutils-uniq.patch.new index 9acb2d7..d690cf6 100644 --- a/core/coreutils/coreutils-uniq.patch.new +++ b/core/coreutils/coreutils-uniq.patch.new @@ -1,6 +1,6 @@ ---- old/src/uniq.c 2016-10-05 20:45:05.445188226 +0200 -+++ new/src/uniq.c 2016-10-05 21:25:24.298871811 +0200 -@@ -58,6 +58,9 @@ +--- old/src/uniq.c 2023-10-26 22:16:06.128439677 +0200 ++++ new/src/uniq.c 2023-10-26 22:15:43.965104621 +0200 +@@ -51,6 +51,9 @@ /* Number of fields to skip on each line when doing comparisons. */ static size_t skip_fields; @@ -10,15 +10,15 @@ /* Number of chars to skip after skipping any fields. */ static size_t skip_chars; -@@ -153,6 +156,7 @@ - {"ignore-case", no_argument, NULL, 'i'}, - {"unique", no_argument, NULL, 'u'}, - {"skip-fields", required_argument, NULL, 'f'}, -+ {"check-fields", required_argument, NULL, 'm'}, - {"skip-chars", required_argument, NULL, 's'}, - {"check-chars", required_argument, NULL, 'w'}, - {"zero-terminated", no_argument, NULL, 'z'}, -@@ -200,6 +204,11 @@ +@@ -146,6 +149,7 @@ + {"ignore-case", no_argument, nullptr, 'i'}, + {"unique", no_argument, nullptr, 'u'}, + {"skip-fields", required_argument, nullptr, 'f'}, ++ {"check-fields", required_argument, nullptr, 'm'}, + {"skip-chars", required_argument, nullptr, 's'}, + {"check-chars", required_argument, nullptr, 'w'}, + {"zero-terminated", no_argument, nullptr, 'z'}, +@@ -193,6 +197,11 @@ "), stdout); fputs (_("\ -i, --ignore-case ignore differences in case when comparing\n\ @@ -30,16 +30,16 @@ -s, --skip-chars=N avoid comparing the first N characters\n\ -u, --unique only print unique lines\n\ "), stdout); -@@ -260,7 +269,7 @@ - return a pointer to the beginning of the line's field to be compared. */ +@@ -252,7 +261,7 @@ - static char * _GL_ATTRIBUTE_PURE + ATTRIBUTE_PURE + static char * -find_field (struct linebuffer const *line) +find_field (struct linebuffer const *line, size_t *len) { size_t count; char const *lp = line->buffer; -@@ -277,6 +286,21 @@ +@@ -269,6 +278,21 @@ i += MIN (skip_chars, size - i); @@ -61,7 +61,7 @@ return line->buffer + i; } -@@ -377,8 +401,7 @@ +@@ -366,8 +390,7 @@ if (readlinebuffer_delim (thisline, stdin, delimiter) == 0) break; @@ -69,9 +69,9 @@ - thislen = thisline->length - 1 - (thisfield - thisline->buffer); + thisfield = find_field (thisline,&thislen); - new_group = (prevline->length == 0 + new_group = (!prevfield || different (thisfield, prevfield, thislen, prevlen)); -@@ -412,8 +435,7 @@ +@@ -402,8 +425,7 @@ if (readlinebuffer_delim (prevline, stdin, delimiter) == 0) goto closefiles; @@ -81,7 +81,7 @@ while (!feof (stdin)) { -@@ -426,8 +448,7 @@ +@@ -416,8 +438,7 @@ goto closefiles; break; } @@ -91,7 +91,7 @@ match = !different (thisfield, prevfield, thislen, prevlen); match_count += match; -@@ -508,6 +529,7 @@ +@@ -497,6 +518,7 @@ skip_chars = 0; skip_fields = 0; @@ -99,16 +99,16 @@ check_chars = SIZE_MAX; output_unique = output_first_repeated = true; output_later_repeated = false; -@@ -523,7 +545,7 @@ +@@ -512,7 +534,7 @@ if (optc == -1 || (posixly_correct && nfiles != 0) || ((optc = getopt_long (argc, argv, -- "-0123456789Dcdf:is:uw:z", longopts, NULL)) -+ "-0123456789Dcdf:im:s:uw:z", longopts, NULL)) +- "-0123456789Dcdf:is:uw:z", ++ "-0123456789Dcdf:im:s:uw:z", + longopts, nullptr)) == -1)) { - if (argc <= optind) -@@ -617,6 +639,11 @@ +@@ -607,6 +629,11 @@ ignore_case = true; break; |