Skip to content

Commit f40291e

Browse files
committed
zdict.rs: use slice fill on doneMarks
1 parent cd1b678 commit f40291e

File tree

1 file changed

+3
-10
lines changed

1 file changed

+3
-10
lines changed

lib/dictBuilder/zdict.rs

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -187,23 +187,16 @@ unsafe fn ZDICT_analyzePos(
187187
{
188188
// skip and mark segment
189189
let pattern16 = MEM_read16(b.add(pos).add(4) as *const core::ffi::c_void);
190-
let mut u: u32 = 0;
191-
let mut patternEnd = 6u32;
192-
while MEM_read16(b.add(pos).offset(patternEnd as isize) as *const core::ffi::c_void)
193-
== pattern16
194-
{
190+
let mut patternEnd = 6usize;
191+
while MEM_read16(b.add(pos).add(patternEnd) as *const core::ffi::c_void) == pattern16 {
195192
patternEnd = patternEnd.wrapping_add(2);
196193
}
197194
if *b.add(pos.wrapping_add(patternEnd as size_t))
198195
== *b.add(pos.wrapping_add(patternEnd as size_t).wrapping_sub(1))
199196
{
200197
patternEnd = patternEnd.wrapping_add(1);
201198
}
202-
u = 1;
203-
while u < patternEnd {
204-
doneMarks[pos.wrapping_add(u as size_t)] = true;
205-
u = u.wrapping_add(1);
206-
}
199+
doneMarks[pos..][1..patternEnd].fill(true);
207200
return solution;
208201
}
209202

0 commit comments

Comments
 (0)