@@ -108,25 +108,23 @@ impl Sudoers {
108
108
let user_matcher = & match_user ( requesting_user) ;
109
109
let user_aliases = get_aliases ( & self . aliases . user , user_matcher) ;
110
110
111
- let runas_matcher;
112
- let runas_matcher_aliases = if let Some ( target_user) = target_user {
113
- runas_matcher = match_user ( target_user) ;
111
+ let runas_matcher_aliases = target_user. map ( |target_user| {
112
+ let runas_matcher = match_user ( target_user) ;
114
113
let runas_aliases = get_aliases ( & self . aliases . runas , & runas_matcher) ;
115
- Some ( ( runas_matcher, runas_aliases) )
116
- } else {
117
- None
118
- } ;
114
+
115
+ ( runas_matcher, runas_aliases)
116
+ } ) ;
119
117
120
118
let match_scope = |scope| match scope {
121
119
ConfigScope :: Generic => true ,
122
120
ConfigScope :: Host ( list) => find_item ( & list, host_matcher, & host_aliases) . is_some ( ) ,
123
121
ConfigScope :: User ( list) => find_item ( & list, user_matcher, & user_aliases) . is_some ( ) ,
124
122
ConfigScope :: RunAs ( list) => {
125
- if let Some ( ( runas_matcher , runas_aliases ) ) = & runas_matcher_aliases {
126
- find_item ( & list , runas_matcher , runas_aliases ) . is_some ( )
127
- } else {
128
- false
129
- }
123
+ runas_matcher_aliases
124
+ . as_ref ( )
125
+ . is_some_and ( | ( runas_matcher , runas_aliases ) | {
126
+ find_item ( & list , runas_matcher , runas_aliases ) . is_some ( )
127
+ } )
130
128
}
131
129
ConfigScope :: Command ( _list) => {
132
130
unreachable ! ( "command-specific defaults are filtered out" )
0 commit comments