Mercurial > dovecot > core-2.3
changeset 26317:f07ec4961895
lib: base64 - Add assertion preventing calling base64_encode_more() after base64_encode_finish().
author | Stephan Bosch <stephan.bosch@open-xchange.com> |
---|---|
date | Thu, 05 Sep 2019 02:31:58 +0200 |
parents | 17914623ffee |
children | 6f2cf5d96415 |
files | src/lib/base64.c src/lib/base64.h |
diffstat | 2 files changed, 5 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib/base64.c Thu Sep 05 01:13:46 2019 +0200 +++ b/src/lib/base64.c Thu Sep 05 02:31:58 2019 +0200 @@ -304,6 +304,7 @@ const unsigned char *src_c, *src_p; size_t src_pos; + i_assert(!enc->finishing); i_assert(!enc->finished); src_p = src_c = src; @@ -386,12 +387,13 @@ size_t dst_avail, line_avail, write_full, write; unsigned int w_buf_pos = 0; + i_assert(!enc->finished); + enc->finishing = TRUE; + dst_avail = 0; if (dest != NULL) dst_avail = buffer_get_avail_size(dest); - i_assert(!enc->finished); - if (enc->w_buf_len > 0 || enc->pending_lf) { if (dst_avail == 0) return FALSE;