diff options
Diffstat (limited to 'src/sort.c')
-rw-r--r-- | src/sort.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/sort.c b/src/sort.c index feaf5a5bc..f03237cb3 100644 --- a/src/sort.c +++ b/src/sort.c @@ -2170,7 +2170,8 @@ check_ordering_compatibility (void) /* Parse the leading integer in STRING and store the resulting value (which must fit into size_t) into *VAL. Return the address of the - suffix after the integer. If MSGID is NULL, return NULL after + suffix after the integer. If the value is too large, silently + substitute SIZE_MAX. If MSGID is NULL, return NULL after failure; otherwise, report MSGID and exit on failure. */ static char const * @@ -2189,10 +2190,8 @@ parse_field_count (char const *string, size_t *val, char const *msgid) /* Fall through. */ case LONGINT_OVERFLOW: case LONGINT_OVERFLOW | LONGINT_INVALID_SUFFIX_CHAR: - if (msgid) - error (SORT_FAILURE, 0, _("%s: count `%.*s' too large"), - _(msgid), (int) (suffix - string), string); - return NULL; + *val = SIZE_MAX; + break; case LONGINT_INVALID: if (msgid) |