File tree Expand file tree Collapse file tree 2 files changed +7
-13
lines changed Expand file tree Collapse file tree 2 files changed +7
-13
lines changed Original file line number Diff line number Diff line change @@ -78,14 +78,7 @@ pub struct Cache {
78
78
}
79
79
80
80
pub fn new_cache ( options : Vec < CdiOption > ) -> Arc < Mutex < Cache > > {
81
- let cache = Arc :: new ( Mutex :: new ( Cache {
82
- spec_dirs : Vec :: new ( ) ,
83
- specs : HashMap :: new ( ) ,
84
- devices : HashMap :: new ( ) ,
85
- errors : HashMap :: new ( ) ,
86
- dir_errors : HashMap :: new ( ) ,
87
- auto_refresh : true ,
88
- } ) ) ;
81
+ let cache = Arc :: new ( Mutex :: new ( Cache :: default ( ) ) ) ;
89
82
90
83
{
91
84
let mut c = cache. lock ( ) . unwrap ( ) ;
@@ -273,10 +266,11 @@ impl Cache {
273
266
if let Some ( dev) = self . devices . get ( & device) {
274
267
let mut spec = dev. get_spec ( ) ;
275
268
if specs. insert ( spec. clone ( ) ) {
276
- match spec. edits ( ) {
277
- Some ( ce) => edits. append ( ce) ?,
278
- None => continue ,
279
- } ;
269
+ // spec.edits may be none when we only have dev.edits
270
+ // allow dev.edits to be added even if spec.edits is None
271
+ if let Some ( ce) = spec. edits ( ) {
272
+ edits. append ( ce) ?
273
+ }
280
274
}
281
275
edits. append ( dev. edits ( ) ) ?;
282
276
} else {
Original file line number Diff line number Diff line change @@ -165,7 +165,7 @@ fn requires_v040(spec: &CDISpec) -> bool {
165
165
spec. devices
166
166
. iter ( )
167
167
. map ( |d| & d. container_edits )
168
- . chain ( std :: iter :: once ( spec. container_edits . as_ref ( ) . unwrap ( ) ) )
168
+ . chain ( spec. container_edits . as_ref ( ) )
169
169
. flat_map ( |edits| edits. mounts . iter ( ) . flat_map ( |mounts| mounts. iter ( ) ) )
170
170
. any ( |mount| mount. r#type . as_ref ( ) . map_or ( false , |typ| !typ. is_empty ( ) ) )
171
171
}
You can’t perform that action at this time.
0 commit comments