@@ -72,10 +72,7 @@ impl RegistryHelper {
72
72
Ok ( Registry {
73
73
key_path : self . config . key_path . clone ( ) ,
74
74
value_name : Some ( value_name. clone ( ) ) ,
75
- value_data : match value {
76
- Data :: None => None ,
77
- _ => Some ( convert_reg_value ( & value) ?)
78
- } ,
75
+ value_data : convert_reg_value ( & value) ?,
79
76
..Default :: default ( )
80
77
} )
81
78
} else {
@@ -169,10 +166,7 @@ impl RegistryHelper {
169
166
if self . what_if {
170
167
return Ok ( Some ( Registry {
171
168
key_path : self . config . key_path . clone ( ) ,
172
- value_data : match data {
173
- Data :: None => None ,
174
- _ => Some ( convert_reg_value ( & data) ?) ,
175
- } ,
169
+ value_data : convert_reg_value ( & data) ?,
176
170
value_name : self . config . value_name . clone ( ) ,
177
171
metadata : if what_if_metadata. is_empty ( ) { None } else { Some ( Metadata { what_if : Some ( what_if_metadata) } ) } ,
178
172
..Default :: default ( )
@@ -323,18 +317,18 @@ fn get_parent_key_path(key_path: &str) -> &str {
323
317
}
324
318
}
325
319
326
- fn convert_reg_value ( value : & Data ) -> Result < RegistryValueData , RegistryError > {
320
+ fn convert_reg_value ( value : & Data ) -> Result < Option < RegistryValueData > , RegistryError > {
327
321
match value {
328
- Data :: String ( s) => Ok ( RegistryValueData :: String ( s. to_string_lossy ( ) ) ) ,
329
- Data :: ExpandString ( s) => Ok ( RegistryValueData :: ExpandString ( s. to_string_lossy ( ) ) ) ,
330
- Data :: Binary ( b) => Ok ( RegistryValueData :: Binary ( b. clone ( ) ) ) ,
331
- Data :: U32 ( d) => Ok ( RegistryValueData :: DWord ( * d) ) ,
322
+ Data :: String ( s) => Ok ( Some ( RegistryValueData :: String ( s. to_string_lossy ( ) ) ) ) ,
323
+ Data :: ExpandString ( s) => Ok ( Some ( RegistryValueData :: ExpandString ( s. to_string_lossy ( ) ) ) ) ,
324
+ Data :: Binary ( b) => Ok ( Some ( RegistryValueData :: Binary ( b. clone ( ) ) ) ) ,
325
+ Data :: U32 ( d) => Ok ( Some ( RegistryValueData :: DWord ( * d) ) ) ,
332
326
Data :: MultiString ( m) => {
333
327
let m: Vec < String > = m. iter ( ) . map ( |s| s. to_string_lossy ( ) ) . collect ( ) ;
334
- Ok ( RegistryValueData :: MultiString ( m) )
328
+ Ok ( Some ( RegistryValueData :: MultiString ( m) ) )
335
329
} ,
336
- Data :: U64 ( q) => Ok ( RegistryValueData :: QWord ( * q) ) ,
337
- Data :: None => Ok ( RegistryValueData :: None ) ,
330
+ Data :: U64 ( q) => Ok ( Some ( RegistryValueData :: QWord ( * q) ) ) ,
331
+ Data :: None => Ok ( None ) ,
338
332
_ => Err ( RegistryError :: UnsupportedValueDataType )
339
333
}
340
334
}
0 commit comments