Fix start index if @sizeOf(T) > 1

This commit is contained in:
dec05eba 2020-09-05 15:31:22 +02:00
parent 3a6e6bd538
commit f93498d2d8

View File

@ -930,7 +930,7 @@ pub fn indexOfPos(comptime T: type, haystack: []const T, start_index: usize, nee
var skip_table: [256]usize = undefined;
boyerMooreHorspoolPreprocess(needle_bytes, skip_table[0..]);
var i: usize = start_index;
var i: usize = start_index * @sizeOf(T);
while (i <= haystack_bytes.len - needle_bytes.len) {
if (mem.eql(u8, haystack_bytes[i .. i + needle_bytes.len], needle_bytes)) return i;
i += skip_table[haystack_bytes[i + needle_bytes.len - 1]];