aboutsummaryrefslogtreecommitdiff
path: root/src/progman.c
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org>2020-12-02 15:01:39 +0200
committerSergey Poznyakoff <gray@gnu.org>2020-12-02 15:01:39 +0200
commit23cad612301853307888a2a9ac2bc50be49e40fa (patch)
tree3423e67f75b9aaba5ce956ff7697aab1fba857f3 /src/progman.c
parent0a5c7476fb327ba7eecf4a7955eb9dfd9431160c (diff)
downloadpies-23cad612301853307888a2a9ac2bc50be49e40fa.tar.gz
pies-23cad612301853307888a2a9ac2bc50be49e40fa.tar.bz2
Fix reporting of the argv over the control interface (improves c0f4c3b99b)
Diffstat (limited to 'src/progman.c')
-rw-r--r--src/progman.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/progman.c b/src/progman.c
index 22482ae..db39b6d 100644
--- a/src/progman.c
+++ b/src/progman.c
@@ -855,7 +855,6 @@ prog_start_prologue (struct prog *prog)
if (prog->v.p.comp->flags & CF_EXPANDENV)
{
struct wordsplit ws;
- size_t argc;
ws.ws_env = (const char **) environ_ptr (prog->v.p.env);
ws.ws_error = progman_ws_error;
@@ -866,17 +865,20 @@ prog_start_prologue (struct prog *prog)
prog_tag (prog), wordsplit_strerror (&ws));
_exit (127);
}
- wordsplit_get_words (&ws, &argc, &prog->v.p.argv);
+ wordsplit_get_words (&ws, &prog->v.p.argc, &prog->v.p.argv);
wordsplit_free (&ws);
}
else
- prog->v.p.argv = prog->v.p.comp->argv;
+ {
+ prog->v.p.argc = prog->v.p.comp->argc;
+ prog->v.p.argv = prog->v.p.comp->argv;
+ }
if (debug_level >= 1 && prog->v.p.argv)
{
int i;
logmsg_printf (LOG_DEBUG, "executing");
- for (i = 0; prog->v.p.argv[i]; i++)
+ for (i = 0; i < prog->v.p.argc; i++)
logmsg_printf (LOG_DEBUG, " %s", quotearg (prog->v.p.argv[i]));
logmsg_printf (LOG_DEBUG, "\n");
}

Return to:

Send suggestions and report system problems to the System administrator.