Commit 6fa7d5d4ad

andrewkraevskii <andrew.kraevskii@gmail.com>
2025-02-10 00:26:52
std.mem: add missing check to lastIndexOfLinear
1 parent c0448a6
Changed files (1)
lib
lib/std/mem.zig
@@ -1396,6 +1396,7 @@ pub fn indexOf(comptime T: type, haystack: []const T, needle: []const T) ?usize
 /// Consider using `lastIndexOf` instead of this, which will automatically use a
 /// more sophisticated algorithm on larger inputs.
 pub fn lastIndexOfLinear(comptime T: type, haystack: []const T, needle: []const T) ?usize {
+    if (needle.len > haystack.len) return null;
     var i: usize = haystack.len - needle.len;
     while (true) : (i -= 1) {
         if (mem.eql(T, haystack[i..][0..needle.len], needle)) return i;