Don't return NULL when retrieving a string that is too long.

pull/1/head
Nicholas Marriott 2009-01-08 21:22:01 +00:00
parent ed5e8c4cd9
commit 4ebb85aae8
2 changed files with 7 additions and 4 deletions

View File

@ -1,4 +1,4 @@
/* $Id: input.c,v 1.70 2009-01-07 22:52:33 nicm Exp $ */
/* $Id: input.c,v 1.71 2009-01-08 21:22:01 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -202,10 +202,9 @@ input_get_string(struct input_ctx *ictx)
{
char *s;
if (ictx->string_buf == NULL)
if (ictx->string_buf == NULL || input_add_string(ictx, '\0') != 0)
return (xstrdup(""));
input_add_string(ictx, '\0');
s = ictx->string_buf;
ictx->string_buf = NULL;
return (s);

View File

@ -1,4 +1,4 @@
/* $Id: screen-write.c,v 1.19 2009-01-06 18:07:57 nicm Exp $ */
/* $Id: screen-write.c,v 1.20 2009-01-08 21:22:01 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -139,6 +139,7 @@ screen_write_cursorup(struct screen_write_ctx *ctx, u_int ny)
if (ny == 0)
return;
log_debug("cursor up: %u + %u", s->cy, ny);
s->cy -= ny;
if (ctx->write != NULL)
@ -159,6 +160,7 @@ screen_write_cursordown(struct screen_write_ctx *ctx, u_int ny)
if (ny == 0)
return;
log_debug("cursor down: %u + %u", s->cy, ny);
s->cy += ny;
if (ctx->write != NULL)
@ -179,6 +181,7 @@ screen_write_cursorright(struct screen_write_ctx *ctx, u_int nx)
if (nx == 0)
return;
log_debug("cursor right: %u + %u", s->cx, nx);
s->cx += nx;
if (ctx->write != NULL)
@ -199,6 +202,7 @@ screen_write_cursorleft(struct screen_write_ctx *ctx, u_int nx)
if (nx == 0)
return;
log_debug("cursor left: %u + %u", s->cx, nx);
s->cx -= nx;
if (ctx->write != NULL)