From 4b3445eae2d7564a4289afb2255dd4c60777519b Mon Sep 17 00:00:00 2001 From: Brian Somers Date: Mon, 20 Aug 2001 13:24:39 +0000 Subject: Handle snprintf() returning -1. MFC after: 2 weeks --- pw/pw_conf.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'pw/pw_conf.c') diff --git a/pw/pw_conf.c b/pw/pw_conf.c index 0580091..e4c5a4a 100644 --- a/pw/pw_conf.c +++ b/pw/pw_conf.c @@ -420,6 +420,8 @@ write_userconfig(char const * file) for (j = k = 0; j < _UC_MAXSHELLS && system_shells[j] != NULL; j++) { char lbuf[64]; int l = snprintf(lbuf, sizeof lbuf, "%s\"%s\"", k ? "," : "", system_shells[j]); + if (l == -1) + l = 0; if (l + k + 1 < len || extendline(&buf, &len, len + LNBUFSZ) != -1) { strcpy(buf + k, lbuf); k += l; @@ -438,6 +440,8 @@ write_userconfig(char const * file) for (j = k = 0; j < config.numgroups && config.groups[j] != NULL; j++) { char lbuf[64]; int l = snprintf(lbuf, sizeof lbuf, "%s\"%s\"", k ? "," : "", config.groups[j]); + if (l == -1) + l = 0; if (l + k + 1 < len || extendline(&buf, &len, len + 1024) != -1) { strcpy(buf + k, lbuf); k += l; -- cgit v1.2.3-56-ge451