1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-06-09 23:39:51 +02:00

Fixed blatant allocation bug.

This commit is contained in:
Werner Koch 2003-12-16 14:20:45 +00:00
parent 9f8cb453b7
commit 082e84c273

View File

@ -139,19 +139,14 @@ print_line (client_t c, const char *line)
line = s + 1; line = s + 1;
} }
n = strlen (line); n = strlen (line);
if (!c->buffer) if (n)
{ {
c->size = 256 - (n + 256) % 256; if (c->len + n >= c->size)
c->buffer = xmalloc (c->size);
memcpy (c->buffer, line, n);
c->len = n;
}
else
{
if (c->len + n > c->size)
{ {
c->size += 256 - (n + 256) % 256; c->size += ((n + 255) & ~255);
c->buffer = xrealloc (c->buffer, c->size); c->buffer = (c->buffer
? xrealloc (c->buffer, c->size)
: xmalloc (c->size));
} }
memcpy (c->buffer + c->len, line, n); memcpy (c->buffer + c->len, line, n);
c->len += n; c->len += n;