]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
cut: optimize -f with -d longer than lines
authorPádraig Brady <P@draigBrady.com>
Tue, 24 Mar 2026 16:35:00 +0000 (16:35 +0000)
committerPádraig Brady <P@draigBrady.com>
Sun, 5 Apr 2026 12:15:56 +0000 (13:15 +0100)
$ time src/cut.before -f1 -dç sl.in >/dev/null
real 0m0.157s

$ time src/cut.after -f1 -dç sl.in >/dev/null
real 0m0.084s

src/cut.c

index 302494157705d6aae411c4479c030a12a5a2f11a..e3e8d49923c70e12d2ab5459a8c0eab38a4fb1f5 100644 (file)
--- a/src/cut.c
+++ b/src/cut.c
@@ -567,6 +567,9 @@ ATTRIBUTE_PURE
 static char *
 find_bytesearch_field_delim (char *buf, size_t len)
 {
+  if (len < delim_length)
+    return NULL;
+
 #if ! __GLIBC__  /* Only S390 has optimized memmem on glibc-2.42  */
   return memmem (buf, len, delim_bytes, delim_length);
 #else