summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>1994-10-26 22:06:49 +0000
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>1994-10-26 22:06:49 +0000
commit9b8a0ebebd59d766242d5531a711584dfc4ba055 (patch)
tree3f06e14fe39c6115e44cf885a719ab69ee8d0ab5 /gcc
parentc61f64e0a559ba86767e0a1b695e54bb829f2a61 (diff)
downloadgcc-9b8a0ebebd59d766242d5531a711584dfc4ba055.tar.gz
(expand_lib, main): Fix off-by-one bugs in several calls to malloc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@8344 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/winnt/ld.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/config/winnt/ld.c b/gcc/config/winnt/ld.c
index c75aa2b1eed..404ab1af275 100644
--- a/gcc/config/winnt/ld.c
+++ b/gcc/config/winnt/ld.c
@@ -116,7 +116,7 @@ expand_lib (name)
{
char *lib, *lib_path;
- lib = malloc (strlen (name) + 5);
+ lib = malloc (strlen (name) + 6);
strcpy (lib, "lib");
strcat (lib, name);
strcat (lib, ".a");
@@ -195,7 +195,7 @@ main (argc, argv)
int out_len;
i++;
- out_len = strlen (argv[i]) + 9;
+ out_len = strlen (argv[i]) + 10;
buff = malloc (out_len);
strcpy (buff, "-out:");
strcat (buff, argv[i]);
@@ -213,7 +213,7 @@ main (argc, argv)
new_len = strlen (&argv[i][2]);
search_dirs_len = strlen (search_dirs);
- nbuff = malloc (new_len);
+ nbuff = malloc (new_len + 1);
strcpy (nbuff, &argv[i][2]);
for (j = 0; j < new_len; j++)