nano

nano with my custom patches
git clone git://bsandro.tech/nano
Log | Files | Refs | README | LICENSE

commit 76f9485b0259ddd81374d8a4fe2b9d4ded57348d
parent db2dc81cee2cf4f7a95c3ccb32c18e6d07b17462
Author: David Lawrence Ramsey <pooka109@gmail.com>
Date:   Mon,  9 Jan 2006 03:23:29 +0000

in ngetdelim(), do sanity checks manually again instead of in an assert,
and set errno to EINVAL as well as return -1 if they fail; this matches
the manual page


git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3262 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

Diffstat:
MChangeLog | 5+++++
Msrc/utils.c | 7+++++--
2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -17,6 +17,11 @@ CVS code - - chars.c: mbstrchr() - Make parameter c const. (DLR) +- utils.c: + ngetdelim() + - Do sanity checks manually again instead of in an assert, and + set errno to EINVAL as well as return -1 if they fail. This + matches the manual page. (DLR) - winio.c: edit_scroll() - Redraw the lines before and after the scrolled region even if diff --git a/src/utils.c b/src/utils.c @@ -3,7 +3,7 @@ * utils.c * * * * Copyright (C) 1999-2004 Chris Allegretta * - * Copyright (C) 2005 David Lawrence Ramsey * + * Copyright (C) 2005-2006 David Lawrence Ramsey * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2, or (at your option) * @@ -197,7 +197,10 @@ ssize_t ngetdelim(char **lineptr, size_t *n, int delim, FILE *stream) int c; /* Sanity checks. */ - assert(lineptr != NULL && n != NULL && stream != NULL); + if (lineptr == NULL || n == NULL || stream == NULL) { + errno = EINVAL; + return -1; + } /* Allocate the line the first time. */ if (*lineptr == NULL) {