Changeset: 72ba2817969e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=72ba2817969e
Modified Files:
monetdb5/mal/mal_readline.c
Branch: Jan2014
Log Message:
Fix error case to not dereference NULL pointers.
diffs (37 lines):
diff --git a/monetdb5/mal/mal_readline.c b/monetdb5/mal/mal_readline.c
--- a/monetdb5/mal/mal_readline.c
+++ b/monetdb5/mal/mal_readline.c
@@ -484,8 +484,10 @@ readConsole(Client cntxt)
if( len >= cntxt->fdin->size) {
/* extremly dirty inplace buffer overwriting */
cntxt->fdin->buf= realloc(cntxt->fdin->buf, len+1);
- if( cntxt->fdin->buf == NULL)
+ if( cntxt->fdin->buf == NULL) {
GDKerror("readConsole" MAL_MALLOC_FAIL);
+ goto bailout;
+ }
cntxt->fdin->size = len;
}
strcpy(cntxt->fdin->buf, buf);
@@ -493,14 +495,14 @@ readConsole(Client cntxt)
cntxt->fdin->len = len;
free(buf);
return 1;
- } else {
- cntxt->fdin->eof = 1;
+ }
+ bailout:
+ cntxt->fdin->eof = 1;
#ifdef HAVE_LIBREADLINE
- if( initReadline ){
- deinit_readline();
- initReadline= 0;
- }
+ if( initReadline ){
+ deinit_readline();
+ initReadline= 0;
+ }
#endif
- }
return -1;
}
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list