From 6960cf009310003dfc79d5a3f9bf9d3db2105a7f Mon Sep 17 00:00:00 2001 From: Brian Somers Date: Mon, 20 Aug 2001 15:09:34 +0000 Subject: Handle snprintf() returning < 0 (not just -1) MFC after: 2 weeks --- pw/pw_conf.c | 4 ++-- pw/pwupd.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'pw') diff --git a/pw/pw_conf.c b/pw/pw_conf.c index e4c5a4a..9377239 100644 --- a/pw/pw_conf.c +++ b/pw/pw_conf.c @@ -420,7 +420,7 @@ 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) + if (l < 0) l = 0; if (l + k + 1 < len || extendline(&buf, &len, len + LNBUFSZ) != -1) { strcpy(buf + k, lbuf); @@ -440,7 +440,7 @@ 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) + if (l < 0) l = 0; if (l + k + 1 < len || extendline(&buf, &len, len + 1024) != -1) { strcpy(buf + k, lbuf); diff --git a/pw/pwupd.c b/pw/pwupd.c index ec29b9e..67a816f 100644 --- a/pw/pwupd.c +++ b/pw/pwupd.c @@ -166,7 +166,7 @@ pw_update(struct passwd * pwd, char const * user, int mode) else fmtpwentry(pwbuf, pwd, PWF_PASSWD); - if (l == -1) + if (l < 0) l = 0; rc = fileupdate(getpwpath(_PASSWD), 0644, pwbuf, pfx, l, mode); if (rc == 0) { -- cgit v1.2.3-56-ge451