@@ -1023,7 +1023,7 @@ pub(super) unsafe fn COVER_dictSelectionFree(selection: COVER_dictSelection_t) {
10231023}
10241024
10251025pub ( super ) unsafe fn COVER_selectDict (
1026- customDictContent : * mut u8 ,
1026+ customDictContent : & [ u8 ] ,
10271027 dictBufferCapacity : size_t ,
10281028 mut dictContentSize : size_t ,
10291029 samplesBuffer : * const u8 ,
@@ -1037,20 +1037,16 @@ pub(super) unsafe fn COVER_selectDict(
10371037) -> COVER_dictSelection_t {
10381038 let mut largestDict = 0 ;
10391039 let mut largestCompressed = 0 ;
1040- let customDictContentEnd = customDictContent. add ( dictContentSize) ;
1040+ let customDictContentEnd = customDictContent. as_ptr ( ) . add ( dictContentSize) ;
10411041 let mut largestDictbuffer: Box < [ u8 ] > = Box :: from ( vec ! [ 0u8 ; dictBufferCapacity] ) ;
1042- let mut candidateDictBuffer: Box < [ u8 ] > = Box :: from ( vec ! [ 0 ; dictBufferCapacity] ) ;
1042+ let mut candidateDictBuffer: Box < [ u8 ] > = Box :: from ( vec ! [ 0u8 ; dictBufferCapacity] ) ;
10431043 let regressionTolerance =
10441044 params. shrinkDictMaxRegression as core:: ffi:: c_double / 100.0f64 + 1.00f64 ;
1045- memcpy (
1046- largestDictbuffer. as_mut_ptr ( ) as * mut core:: ffi:: c_void ,
1047- customDictContent as * const core:: ffi:: c_void ,
1048- dictContentSize,
1049- ) ;
1045+ largestDictbuffer[ ..customDictContent. len ( ) ] . copy_from_slice ( customDictContent) ;
10501046 dictContentSize = ZDICT_finalizeDictionary (
10511047 largestDictbuffer. as_mut_ptr ( ) as * mut core:: ffi:: c_void ,
10521048 dictBufferCapacity,
1053- customDictContent as * const core:: ffi:: c_void ,
1049+ customDictContent. as_ptr ( ) as * const core:: ffi:: c_void ,
10541050 dictContentSize,
10551051 samplesBuffer as * const core:: ffi:: c_void ,
10561052 samplesSizes,
@@ -1085,11 +1081,7 @@ pub(super) unsafe fn COVER_selectDict(
10851081 largestCompressed = totalCompressedSize;
10861082 dictContentSize = ZDICT_DICTSIZE_MIN as size_t ;
10871083 while dictContentSize < largestDict {
1088- memcpy (
1089- candidateDictBuffer. as_mut_ptr ( ) as * mut core:: ffi:: c_void ,
1090- largestDictbuffer. as_ptr ( ) as * const core:: ffi:: c_void ,
1091- largestDict,
1092- ) ;
1084+ candidateDictBuffer[ ..largestDict] . copy_from_slice ( & largestDictbuffer[ ..largestDict] ) ;
10931085 dictContentSize = ZDICT_finalizeDictionary (
10941086 candidateDictBuffer. as_mut_ptr ( ) as * mut core:: ffi:: c_void ,
10951087 dictBufferCapacity,
@@ -1156,7 +1148,7 @@ unsafe fn COVER_tryParameters(opaque: *mut core::ffi::c_void) {
11561148 parameters,
11571149 ) ;
11581150 selection = COVER_selectDict (
1159- dict. as_mut_ptr ( ) . add ( tail ) ,
1151+ & dict[ tail.. ] ,
11601152 dictBufferCapacity,
11611153 dictBufferCapacity. wrapping_sub ( tail) ,
11621154 ( * ctx) . samples . as_ptr ( ) ,
0 commit comments