aboutsummaryrefslogtreecommitdiffstats
path: root/src/libexecline/el_modifs_and_exec.c
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2024-11-06 08:05:33 +0000
committerLaurent Bercot <ska@appnovation.com>2024-11-06 08:05:33 +0000
commit3d91d9ce645efa020800b85be1ac2727ebcbad19 (patch)
tree4461d2c99abfb80f3955b4f775b26767e823fc6a /src/libexecline/el_modifs_and_exec.c
parent32ed930a967c83c5b683d1d22c286b46a9f792ea (diff)
downloadexecline-3d91d9ce645efa020800b85be1ac2727ebcbad19.tar.gz
Prepare for 2.9.7.0 ; rework forx/forstdin -p, add -P maxpar
Also refactor several things to keep global footprint low Signed-off-by: Laurent Bercot <ska@appnovation.com>
Diffstat (limited to 'src/libexecline/el_modifs_and_exec.c')
-rw-r--r--src/libexecline/el_modifs_and_exec.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/libexecline/el_modifs_and_exec.c b/src/libexecline/el_modifs_and_exec.c
index ca72291..675e284 100644
--- a/src/libexecline/el_modifs_and_exec.c
+++ b/src/libexecline/el_modifs_and_exec.c
@@ -47,7 +47,7 @@ void el_modifs_and_exec (char const *const *argv, char const *const *vars, char
{
size_t m = 0 ;
size_t ypos = 0 ;
- char const *newargv[env_len(argv) + 3 + 5 * yesn] ;
+ char const *newargv[env_len(argv) + 3 + 4 * yesn] ;
char yesvars[yeslen ? yeslen : 1] ;
newargv[m++] = EXECLINE_BINPREFIX "multisubstitute" ;
for (size_t i = 0 ; i < n ; i++) if (values[i])
@@ -55,10 +55,9 @@ void el_modifs_and_exec (char const *const *argv, char const *const *vars, char
size_t len = strlen(vars[i]) + 1 ;
char *p = yesvars + ypos ;
newargv[m++] = " importas" ;
- newargv[m++] = " -ui" ;
+ newargv[m++] = " -uSi" ;
newargv[m++] = " --" ;
newargv[m++] = p ;
- newargv[m++] = p ;
yesvars[ypos++] = ' ' ;
memcpy(yesvars + ypos, vars[i], len) ;
ypos += len ;