diff options
| author | Jung-uk Kim <jkim@FreeBSD.org> | 2016-09-22 13:04:03 +0000 |
|---|---|---|
| committer | Jung-uk Kim <jkim@FreeBSD.org> | 2016-09-22 13:04:03 +0000 |
| commit | e1b483878d9824c63d376895da633b0b96fbbaed (patch) | |
| tree | 0846e185ed4cc1159a684e408e772c86ae0fc1a7 /crypto/bio/b_print.c | |
| parent | 57f1256b1a087adbdf8e5c080dd9ed7975de939a (diff) | |
Diffstat (limited to 'crypto/bio/b_print.c')
| -rw-r--r-- | crypto/bio/b_print.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/crypto/bio/b_print.c b/crypto/bio/b_print.c index 90248fa2aabac..987fe068c6de1 100644 --- a/crypto/bio/b_print.c +++ b/crypto/bio/b_print.c @@ -423,9 +423,15 @@ _dopr(char **sbuffer, break; } } - *truncated = (currlen > *maxlen - 1); - if (*truncated) - currlen = *maxlen - 1; + /* + * We have to truncate if there is no dynamic buffer and we have filled the + * static buffer. + */ + if (buffer == NULL) { + *truncated = (currlen > *maxlen - 1); + if (*truncated) + currlen = *maxlen - 1; + } if(!doapr_outch(sbuffer, buffer, &currlen, maxlen, '\0')) return 0; *retlen = currlen - 1; |
