From f4fac657461454cae36a9c9f8a18addc8cebd447 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Tue, 8 Jun 1993 00:08:45 +0000 Subject: [PATCH] Formerly main.c.~88~ --- main.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/main.c b/main.c index fe731c7a..f03801f3 100644 --- a/main.c +++ b/main.c @@ -203,7 +203,7 @@ static unsigned int inf_jobs = 0; double max_load_average = -1.0; double default_load_average = -1.0; -/* List of directories given with -c switches. */ +/* List of directories given with -C switches. */ static struct stringlist *directories = 0; @@ -369,6 +369,13 @@ static struct file * enter_command_line_file (name) char *name; { + if (name[0] == '~') + { + char *expanded = tilde_expand (name); + if (expanded != 0) + name = expanded; /* Memory leak; I don't care. */ + } + /* This is also done in parse_file_seq, so this is redundant for names read from makefiles. It is here for names passed on the command line. */ @@ -627,8 +634,16 @@ main (argc, argv, envp) for (i = 0; directories->list[i] != 0; ++i) { char *dir = directories->list[i]; + if (dir[0] == '~') + { + char *expanded = tilde_expand (dir); + if (expanded != 0) + dir = expanded; + } if (chdir (dir) < 0) pfatal_with_name (dir); + if (dir != directories->list[i]) + free (dir); } /* Figure out the level of recursion. */ @@ -986,7 +1001,7 @@ main (argc, argv, envp) /* These names might have changed. */ register unsigned int i, j = 0; for (i = 1; i < argc; ++i) - if (!strcmp (argv[i], "-f")) + if (!strcmp (argv[i], "-f")) /* XXX */ { char *p = &argv[i][2]; if (*p == '\0')