hush: nommu fix for function passing
This commit is contained in:
		@@ -5328,9 +5328,12 @@ static int parse_stream_dquoted(o_string *as_string,
 | 
			
		||||
		 * within double quotes by preceding it with a backslash.
 | 
			
		||||
		 */
 | 
			
		||||
		if (strchr("$`\"\\", next) != NULL) {
 | 
			
		||||
			o_addqchr(dest, i_getch(input));
 | 
			
		||||
			ch = i_getch(input);
 | 
			
		||||
			o_addqchr(dest, ch);
 | 
			
		||||
			nommu_addchr(as_string, ch);
 | 
			
		||||
		} else {
 | 
			
		||||
			o_addqchr(dest, '\\');
 | 
			
		||||
			nommu_addchr(as_string, '\\');
 | 
			
		||||
		}
 | 
			
		||||
		goto again;
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								shell/hush_test/hush-misc/func4.right
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								shell/hush_test/hush-misc/func4.right
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
			
		||||
24
 | 
			
		||||
Done
 | 
			
		||||
							
								
								
									
										7
									
								
								shell/hush_test/hush-misc/func4.tests
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										7
									
								
								shell/hush_test/hush-misc/func4.tests
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,7 @@
 | 
			
		||||
func() { 
 | 
			
		||||
	eval "echo \"\${val_${1}}\"" 
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
val_x=24 
 | 
			
		||||
(func x)
 | 
			
		||||
echo Done
 | 
			
		||||
@@ -67,6 +67,7 @@ HERE
 | 
			
		||||
    f >/dev/null
 | 
			
		||||
    : $((i++))
 | 
			
		||||
done
 | 
			
		||||
unset i l t
 | 
			
		||||
unset -f f
 | 
			
		||||
 | 
			
		||||
memleak
 | 
			
		||||
@@ -134,6 +135,7 @@ HERE
 | 
			
		||||
    f >/dev/null
 | 
			
		||||
    : $((i++))
 | 
			
		||||
done
 | 
			
		||||
unset i l t
 | 
			
		||||
unset -f f
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user