File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -120,19 +120,12 @@ fn suffixes(key: &EnvKey) -> Option<Vec<&'static str>> {
120120}
121121
122122pub fn mix ( input : HashMap < String , Vec < String > > ) -> HashMap < String , String > {
123- let mut rv = HashMap :: new ( ) ;
123+ let mut rv = HashMap :: from_iter ( std :: env :: vars ( ) ) ;
124124
125- // append the existing keys
126- for ( key, mut value) in std:: env:: vars ( ) {
127- if let Some ( injected_values) = input. get ( & key) {
128- value = format ! ( "{}:{}" , injected_values. join( ":" ) , value) ;
129- }
130- rv. insert ( key, value) ;
131- }
132-
133- // add the new keys
134125 for ( key, value) in input. iter ( ) {
135- if !rv. contains_key ( key) {
126+ if let Some ( values) = rv. get ( key) {
127+ rv. insert ( key. clone ( ) , format ! ( "{}:{}" , value. join( ":" ) , values) ) ;
128+ } else {
136129 rv. insert ( key. clone ( ) , value. join ( ":" ) ) ;
137130 }
138131 }
You can’t perform that action at this time.
0 commit comments