summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/fhandler_proc.cc
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2014-10-24 19:08:55 +0000
committerCorinna Vinschen <corinna@vinschen.de>2014-10-24 19:08:55 +0000
commite91c2f80ba4bae58bbe99bbf8053f9d80c25a379 (patch)
treeb2c2599908bb802929b8a9af86aa04cf8077f388 /winsup/cygwin/fhandler_proc.cc
parent36e14a881ef880ce3c48c92993d05e9614c6095d (diff)
downloadcygnal-e91c2f80ba4bae58bbe99bbf8053f9d80c25a379.tar.gz
cygnal-e91c2f80ba4bae58bbe99bbf8053f9d80c25a379.tar.bz2
cygnal-e91c2f80ba4bae58bbe99bbf8053f9d80c25a379.zip
* fhandler_proc.cc (format_proc_cygdrive): Fix symlink path if cygdrive
is "/".
Diffstat (limited to 'winsup/cygwin/fhandler_proc.cc')
-rw-r--r--winsup/cygwin/fhandler_proc.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/winsup/cygwin/fhandler_proc.cc b/winsup/cygwin/fhandler_proc.cc
index 1c335c429..0fd2e569c 100644
--- a/winsup/cygwin/fhandler_proc.cc
+++ b/winsup/cygwin/fhandler_proc.cc
@@ -1360,7 +1360,8 @@ format_proc_cygdrive (void *, char *&destbuf)
{
destbuf = (char *) crealloc_abort (destbuf, mount_table->cygdrive_len + 1);
char *dend = stpcpy (destbuf, mount_table->cygdrive);
- *--dend = '\0';
+ if (dend > destbuf + 1) /* cygdrive != "/"? */
+ *--dend = '\0';
return dend - destbuf;
}