1
1
use std:: io;
2
2
use std:: marker;
3
- use std:: mem:: MaybeUninit ;
4
3
use std:: ptr;
5
4
use std:: slice;
6
5
@@ -162,7 +161,6 @@ impl<'repo> Odb<'repo> {
162
161
/// Create stream for writing a pack file to the ODB
163
162
pub fn packwriter ( & self ) -> Result < OdbPackwriter < ' _ > , Error > {
164
163
let mut out = ptr:: null_mut ( ) ;
165
- let progress = MaybeUninit :: uninit ( ) ;
166
164
let progress_cb: raw:: git_indexer_progress_cb = Some ( write_pack_progress_cb) ;
167
165
let progress_payload = Box :: new ( OdbPackwriterCb { cb : None } ) ;
168
166
let progress_payload_ptr = Box :: into_raw ( progress_payload) ;
@@ -178,7 +176,7 @@ impl<'repo> Odb<'repo> {
178
176
179
177
Ok ( OdbPackwriter {
180
178
raw : out,
181
- progress,
179
+ progress : Default :: default ( ) ,
182
180
progress_payload_ptr,
183
181
} )
184
182
}
@@ -445,7 +443,7 @@ pub(crate) struct OdbPackwriterCb<'repo> {
445
443
/// A stream to write a packfile to the ODB
446
444
pub struct OdbPackwriter < ' repo > {
447
445
raw : * mut raw:: git_odb_writepack ,
448
- progress : MaybeUninit < raw:: git_indexer_progress > ,
446
+ progress : raw:: git_indexer_progress ,
449
447
progress_payload_ptr : * mut OdbPackwriterCb < ' repo > ,
450
448
}
451
449
@@ -455,7 +453,7 @@ impl<'repo> OdbPackwriter<'repo> {
455
453
unsafe {
456
454
let writepack = & * self . raw ;
457
455
let res = match writepack. commit {
458
- Some ( commit) => commit ( self . raw , self . progress . as_mut_ptr ( ) ) ,
456
+ Some ( commit) => commit ( self . raw , & mut self . progress ) ,
459
457
None => -1 ,
460
458
} ;
461
459
@@ -489,7 +487,7 @@ impl<'repo> io::Write for OdbPackwriter<'repo> {
489
487
490
488
let writepack = & * self . raw ;
491
489
let res = match writepack. append {
492
- Some ( append) => append ( self . raw , ptr, len, self . progress . as_mut_ptr ( ) ) ,
490
+ Some ( append) => append ( self . raw , ptr, len, & mut self . progress ) ,
493
491
None => -1 ,
494
492
} ;
495
493
0 commit comments