SCP: Make sure that dynamically allocated print buffers have room for NUL character string terminator
This commit is contained in:
parent
137f825811
commit
1d3ac294c4
2 changed files with 20 additions and 12 deletions
6
scp.c
6
scp.c
|
@ -9517,6 +9517,8 @@ while (1) { /* format passed string, arg
|
||||||
if (buf != stackbuf)
|
if (buf != stackbuf)
|
||||||
free (buf);
|
free (buf);
|
||||||
bufsize = bufsize * 2;
|
bufsize = bufsize * 2;
|
||||||
|
if (bufsize < len + 2)
|
||||||
|
bufsize = len + 2;
|
||||||
buf = (char *) malloc (bufsize);
|
buf = (char *) malloc (bufsize);
|
||||||
if (buf == NULL) /* out of memory */
|
if (buf == NULL) /* out of memory */
|
||||||
return;
|
return;
|
||||||
|
@ -9574,6 +9576,8 @@ while (1) { /* format passed string, arg
|
||||||
if (buf != stackbuf)
|
if (buf != stackbuf)
|
||||||
free (buf);
|
free (buf);
|
||||||
bufsize = bufsize * 2;
|
bufsize = bufsize * 2;
|
||||||
|
if (bufsize < len + 2)
|
||||||
|
bufsize = len + 2;
|
||||||
buf = (char *) malloc (bufsize);
|
buf = (char *) malloc (bufsize);
|
||||||
if (buf == NULL) /* out of memory */
|
if (buf == NULL) /* out of memory */
|
||||||
return SCPE_MEM;
|
return SCPE_MEM;
|
||||||
|
@ -9654,6 +9658,8 @@ if (sim_deb && dptr && (dptr->dctrl & dbits)) {
|
||||||
if (buf != stackbuf)
|
if (buf != stackbuf)
|
||||||
free (buf);
|
free (buf);
|
||||||
bufsize = bufsize * 2;
|
bufsize = bufsize * 2;
|
||||||
|
if (bufsize < len + 2)
|
||||||
|
bufsize = len + 2;
|
||||||
buf = (char *) malloc (bufsize);
|
buf = (char *) malloc (bufsize);
|
||||||
if (buf == NULL) /* out of memory */
|
if (buf == NULL) /* out of memory */
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -3878,6 +3878,8 @@ while (1) { /* format passed string, arg
|
||||||
if (buf != stackbuf)
|
if (buf != stackbuf)
|
||||||
free (buf);
|
free (buf);
|
||||||
bufsize = bufsize * 2;
|
bufsize = bufsize * 2;
|
||||||
|
if (bufsize < len + 2)
|
||||||
|
bufsize = len + 2;
|
||||||
buf = (char *) malloc (bufsize);
|
buf = (char *) malloc (bufsize);
|
||||||
if (buf == NULL) /* out of memory */
|
if (buf == NULL) /* out of memory */
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Add table
Reference in a new issue