@@ -193,16 +193,9 @@ where
193193                pkg_id, 
194194                name, 
195195                Arc :: new ( Fingerprint  { 
196-                     rustc :  0 , 
197-                     target :  0 , 
198-                     profile :  0 , 
199-                     path :  0 , 
200196                    local :  vec ! [ LocalFingerprint :: Precalculated ( String :: new( ) ) ] , 
201-                     features :  String :: new ( ) , 
202-                     deps :  Vec :: new ( ) , 
203197                    memoized_hash :  Mutex :: new ( Some ( hash) ) , 
204-                     edition :  Edition :: Edition2015 , 
205-                     rustflags :  Vec :: new ( ) , 
198+                     ..Fingerprint :: new ( ) 
206199                } ) , 
207200            ) 
208201        } ) 
@@ -228,6 +221,21 @@ impl LocalFingerprint {
228221struct  MtimeSlot ( Mutex < Option < FileTime > > ) ; 
229222
230223impl  Fingerprint  { 
224+     fn  new ( )  -> Fingerprint  { 
225+         Fingerprint  { 
226+             rustc :  0 , 
227+             target :  0 , 
228+             profile :  0 , 
229+             path :  0 , 
230+             features :  String :: new ( ) , 
231+             deps :  Vec :: new ( ) , 
232+             local :  Vec :: new ( ) , 
233+             memoized_hash :  Mutex :: new ( None ) , 
234+             edition :  Edition :: Edition2015 , 
235+             rustflags :  Vec :: new ( ) , 
236+         } 
237+     } 
238+ 
231239    fn  update_local ( & self ,  root :  & Path )  -> CargoResult < ( ) >  { 
232240        let  mut  hash_busted = false ; 
233241        for  local in  self . local . iter ( )  { 
@@ -529,18 +537,7 @@ pub fn prepare_build_cmd<'a, 'cfg>(
529537    debug ! ( "fingerprint at: {}" ,  loc. display( ) ) ; 
530538
531539    let  ( local,  output_path)  = build_script_local_fingerprints ( cx,  unit) ?; 
532-     let  mut  fingerprint = Fingerprint  { 
533-         rustc :  0 , 
534-         target :  0 , 
535-         profile :  0 , 
536-         path :  0 , 
537-         features :  String :: new ( ) , 
538-         deps :  Vec :: new ( ) , 
539-         local, 
540-         memoized_hash :  Mutex :: new ( None ) , 
541-         edition :  Edition :: Edition2015 , 
542-         rustflags :  Vec :: new ( ) , 
543-     } ; 
540+     let  mut  fingerprint = Fingerprint  {  local,  ..Fingerprint :: new ( )  } ; 
544541    let  compare = compare_old_fingerprint ( & loc,  & fingerprint) ; 
545542    log_compare ( unit,  & compare) ; 
546543
0 commit comments