summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/winf.cc
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2013-06-19 16:00:43 +0000
committerChristopher Faylor <me@cgf.cx>2013-06-19 16:00:43 +0000
commit37ee5b49affbd393b04b620942d846efc9687082 (patch)
treef49423a6d488410446d4102babe20202ad2dd361 /winsup/cygwin/winf.cc
parent82c19d335abd0ee957ad5c3167755a545521504a (diff)
downloadcygnal-37ee5b49affbd393b04b620942d846efc9687082.tar.gz
cygnal-37ee5b49affbd393b04b620942d846efc9687082.tar.bz2
cygnal-37ee5b49affbd393b04b620942d846efc9687082.zip
* spawn.cc (child_info_spawn::worker): Eliminate call to newargv.set() in favor
of conglomerated newargv.setup(). Let newargv.setup() decide when to call dup_all(). Only set argc and argv for cygwin processes. (av::setup): Rename from av::fixup. Accept argc and argv parameters. Fill out argv and argc here. Duplicate whole argv structure when this is a Cygwin executable. * winf.cc (linebuf::fromargv): Don't bother duplicating argv elements since they will never be used. * winf.h (av::set): Delete. (av::setup): Rename from av::fixup. Add two parameters. (av::replace0_maybe): Assign calloced to 1 rather than 'true' for clarity. (av::dup_maybe): Delete. (av::dup_all): Set calloced to show that we have duplicated all of the arguments in the list.
Diffstat (limited to 'winsup/cygwin/winf.cc')
-rw-r--r--winsup/cygwin/winf.cc1
1 files changed, 0 insertions, 1 deletions
diff --git a/winsup/cygwin/winf.cc b/winsup/cygwin/winf.cc
index 6d3ced26c..26307a27d 100644
--- a/winsup/cygwin/winf.cc
+++ b/winsup/cygwin/winf.cc
@@ -73,7 +73,6 @@ linebuf::fromargv (av& newargv, const char *real_path, bool cmdlenoverflow_ok)
char *p = NULL;
const char *a;
- newargv.dup_maybe (i);
a = i ? newargv[i] : (char *) real_path;
int len = strlen (a);
if (len != 0 && !strpbrk (a, " \t\n\r\""))