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