aboutsummaryrefslogtreecommitdiff
path: root/gdb/fork-child.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2001-11-27 03:09:44 +0000
committerTom Tromey <tromey@redhat.com>2001-11-27 03:09:44 +0000
commitc2a727faa20681db53f8e5a4aaf3387e568a2538 (patch)
tree1aeb8eeba27c487c5f1fab84b7423fa1164c4959 /gdb/fork-child.c
parent756caa3d897f60ba7a6db86e5d8af3645100a6ac (diff)
downloadgdb-c2a727faa20681db53f8e5a4aaf3387e568a2538.zip
gdb-c2a727faa20681db53f8e5a4aaf3387e568a2538.tar.gz
gdb-c2a727faa20681db53f8e5a4aaf3387e568a2538.tar.bz2
* NEWS: Update for --args.
* infcmd.c (construct_inferior_arguments): Moved from ... * fork-child.c: ... here.
Diffstat (limited to 'gdb/fork-child.c')
-rw-r--r--gdb/fork-child.c71
1 files changed, 0 insertions, 71 deletions
diff --git a/gdb/fork-child.c b/gdb/fork-child.c
index 24cd00a..21e5089 100644
--- a/gdb/fork-child.c
+++ b/gdb/fork-child.c
@@ -568,74 +568,3 @@ startup_inferior (int ntraps)
#endif /* STARTUP_INFERIOR */
stop_soon_quietly = 0;
}
-
-/* Compute command-line string given argument vector. This does the
- same shell processing as fork_inferior. */
-/* ARGSUSED */
-char *
-construct_inferior_arguments (struct gdbarch *gdbarch, int argc, char **argv)
-{
- char *result;
-
- if (STARTUP_WITH_SHELL)
- {
- /* This holds all the characters considered special to the
- typical Unix shells. We include `^' because the SunOS
- /bin/sh treats it as a synonym for `|'. */
- char *special = "\"!#$&*()\\|[]{}<>?'\"`~^; \t\n";
- int i;
- int length = 0;
- char *out, *cp;
-
- /* We over-compute the size. It shouldn't matter. */
- for (i = 0; i < argc; ++i)
- length += 2 * strlen (argv[i]) + 1;
-
- result = (char *) xmalloc (length);
- out = result;
-
- for (i = 0; i < argc; ++i)
- {
- if (i > 0)
- *out++ = ' ';
-
- for (cp = argv[i]; *cp; ++cp)
- {
- if (strchr (special, *cp) != NULL)
- *out++ = '\\';
- *out++ = *cp;
- }
- }
- *out = '\0';
- }
- else
- {
- /* In this case we can't handle arguments that contain spaces,
- tabs, or newlines -- see breakup_args(). */
- int i;
- int length = 0;
-
- for (i = 0; i < argc; ++i)
- {
- char *cp = strchr (argv[i], ' ');
- if (cp == NULL)
- cp = strchr (argv[i], '\t');
- if (cp == NULL)
- cp = strchr (argv[i], '\n');
- if (cp != NULL)
- error ("can't handle command-line argument containing whitespace");
- length += strlen (argv[i]) + 1;
- }
-
- result = (char *) xmalloc (length);
- result[0] = '\0';
- for (i = 0; i < argc; ++i)
- {
- if (i > 0)
- strcat (result, " ");
- strcat (result, argv[i]);
- }
- }
-
- return result;
-}