Skip to content

Commit 9e05b9c

Browse files
michielp1807folkertdev
authored andcommitted
Add debug asserts for things that should never happen
1 parent ffed02c commit 9e05b9c

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

lib/dictBuilder/zdict.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -518,6 +518,7 @@ unsafe fn ZDICT_tryMerge(
518518
}
519519

520520
unsafe fn ZDICT_removeDictItem(table: *mut DictItem, id: u32) {
521+
debug_assert_ne!(id, 0);
521522
if id == 0 {
522523
return; // protection, should never happen
523524
}
@@ -1414,6 +1415,8 @@ unsafe fn ZDICT_trainFromBuffer_unsafe_legacy(
14141415
let pos = (*dictList.offset(u as isize)).pos;
14151416
let length = (*dictList.offset(u as isize)).length;
14161417
let printedLength = Ord::min(40, length);
1418+
1419+
debug_assert!((pos + length) as size_t <= samplesBuffSize);
14171420
if pos as size_t > samplesBuffSize
14181421
|| pos.wrapping_add(length) as size_t > samplesBuffSize
14191422
{
@@ -1504,6 +1507,7 @@ unsafe fn ZDICT_trainFromBuffer_unsafe_legacy(
15041507
for u in 1..(*dictList).pos {
15051508
let l = (*dictList.offset(u as isize)).length;
15061509
ptr = ptr.offset(-(l as isize));
1510+
debug_assert!(ptr >= dictBuffer as *mut u8);
15071511
if ptr < dictBuffer as *mut u8 {
15081512
free(dictList as *mut core::ffi::c_void);
15091513
return Error::GENERIC.to_error_code(); // should not happen

0 commit comments

Comments
 (0)