aboutsummaryrefslogtreecommitdiff
path: root/gcc/gcc.c
diff options
context:
space:
mode:
authorPaul Gortmaker <paul.gortmaker@windriver.com>2014-06-25 21:21:12 +0000
committerJeff Law <law@gcc.gnu.org>2014-06-25 15:21:12 -0600
commit646d1beda02f0aca8f6a69ea97889f1661cf7fa9 (patch)
treec2515d705c2e46056c43ec04802c2d6d1088b269 /gcc/gcc.c
parentb925bf594a3a5ca47975efa1c52d794c0c776373 (diff)
downloadgcc-646d1beda02f0aca8f6a69ea97889f1661cf7fa9.zip
gcc-646d1beda02f0aca8f6a69ea97889f1661cf7fa9.tar.gz
gcc-646d1beda02f0aca8f6a69ea97889f1661cf7fa9.tar.bz2
gcc.c (set_multilib_dir): Malloc "." pointer as well.
2014-06-25 Paul Gortmaker <paul.gortmaker@windriver.com> Jakub Jelinek <jakub@redhat.com> * gcc.c (set_multilib_dir): Malloc "." pointer as well. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r211997
Diffstat (limited to 'gcc/gcc.c')
-rw-r--r--gcc/gcc.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 9ac18e6..168acf7 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -7790,10 +7790,15 @@ set_multilib_dir (void)
q2++;
if (*q2 == ':')
ml_end = q2;
- new_multilib_os_dir = XNEWVEC (char, ml_end - q);
- memcpy (new_multilib_os_dir, q + 1, ml_end - q - 1);
- new_multilib_os_dir[ml_end - q - 1] = '\0';
- multilib_os_dir = *new_multilib_os_dir ? new_multilib_os_dir : ".";
+ if (ml_end - q == 1)
+ multilib_os_dir = xstrdup (".");
+ else
+ {
+ new_multilib_os_dir = XNEWVEC (char, ml_end - q);
+ memcpy (new_multilib_os_dir, q + 1, ml_end - q - 1);
+ new_multilib_os_dir[ml_end - q - 1] = '\0';
+ multilib_os_dir = new_multilib_os_dir;
+ }
if (q2 < end && *q2 == ':')
{