Noted with versions 7.0.3, 7.1.3, and 7.2.1:

The psql interpreter becomes unstable if variable substitutions
are used.  The debugger GDB was unable to help however mpatrol
reports that the sprintf at mainloop.c:389 is steping one byte
farther than the allocation.

William K. Volkman
This commit is contained in:
Bruce Momjian 2002-06-15 19:37:48 +00:00
parent eeb1dd5068
commit cd7be4d947
1 changed files with 3 additions and 2 deletions

View File

@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
* $Header: /cvsroot/pgsql/src/bin/psql/mainloop.c,v 1.47 2002/03/27 19:16:13 petere Exp $
* $Header: /cvsroot/pgsql/src/bin/psql/mainloop.c,v 1.48 2002/06/15 19:37:48 momjian Exp $
*/
#include "postgres_fe.h"
#include "mainloop.h"
@ -378,7 +378,8 @@ MainLoop(FILE *source)
{
out_length = strlen(value);
new = malloc(len + out_length - (1 + in_length) + 1);
/* Allow for 'after' character also 2002-05-27 */
new = malloc(len + out_length - (1 + in_length) + 1 + 1);
if (!new)
{
psql_error("out of memory\n");