aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2000-03-15 11:36:20 +0000
committerEli Zaretskii <eliz@gnu.org>2000-03-15 11:36:20 +0000
commitcd0040c11f57567dc452ce86dd209e2d3bc2ab36 (patch)
tree9d1e69c45a9c3a7ee2013a41090a831c6809bd7f
parenta27688aa9ff9640b845e43eeda28c91a07387b58 (diff)
downloadgdb-cd0040c11f57567dc452ce86dd209e2d3bc2ab36.zip
gdb-cd0040c11f57567dc452ce86dd209e2d3bc2ab36.tar.gz
gdb-cd0040c11f57567dc452ce86dd209e2d3bc2ab36.tar.bz2
(username_completion_function) [__GO32__]: Don't bypass getpw* calls.
(filename_completion_function): Handle drive-relative file names d:foo.
-rw-r--r--readline/complete.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/readline/complete.c b/readline/complete.c
index 714a2bf..1188120 100644
--- a/readline/complete.c
+++ b/readline/complete.c
@@ -1407,9 +1407,9 @@ username_completion_function (text, state)
char *text;
int state;
{
-#if defined (__GO32__) || defined (__WIN32__) || defined (__OPENNT)
+#if defined (__WIN32__) || defined (__OPENNT)
return (char *)NULL;
-#else /* !__GO32__ */
+#else /* !__WIN32__ && !__OPENNT */
static char *username = (char *)NULL;
static struct passwd *entry;
static int namelen, first_char, first_char_loc;
@@ -1499,6 +1499,14 @@ filename_completion_function (text, state)
strcpy (filename, ++temp);
*temp = '\0';
}
+#if defined (__WIN32__) || defined (__OPENNT) || defined (__MSDOS__)
+ /* Handle the drive-relative names "d:foo/bar". */
+ else if (dirname[1] == ':')
+ {
+ strcpy (filename, dirname + 2);
+ dirname[2] = '\0';
+ }
+#endif
else
{
dirname[0] = '.';