diff --git a/src/libraries/System.Private.CoreLib/src/System/SearchValues/Strings/Helpers/RabinKarp.cs b/src/libraries/System.Private.CoreLib/src/System/SearchValues/Strings/Helpers/RabinKarp.cs index d420c70d16c198..d8970655cb31b7 100644 --- a/src/libraries/System.Private.CoreLib/src/System/SearchValues/Strings/Helpers/RabinKarp.cs +++ b/src/libraries/System.Private.CoreLib/src/System/SearchValues/Strings/Helpers/RabinKarp.cs @@ -64,6 +64,12 @@ public RabinKarp(ReadOnlySpan values) foreach (string value in values) { + if (value.Length > MaxInputLength) + { + // This value can never match. There's no point in including it in the buckets. + continue; + } + nuint hash = 0; for (int i = 0; i < minimumLength; i++) {