From 2ae916fc1a32a33cf9e576741cf9e62bc445776c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C5=99emysl=20Janouch?= Date: Tue, 8 Dec 2015 22:11:11 +0100 Subject: [PATCH] degesch: clarify text wrapping algorithm --- degesch.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/degesch.c b/degesch.c index 4ae824d..52141fc 100644 --- a/degesch.c +++ b/degesch.c @@ -6849,13 +6849,14 @@ wrap_message (const char *message, if (line_max <= 0) goto error; - for (size_t message_left = strlen (message); message_left; ) + int message_left = strlen (message); + while (message_left > line_max) { struct str m; str_init (&m); - size_t eaten = wrap_text_for_single_line (message, - MIN ((size_t) line_max, message_left), message_left, &m); + size_t eaten = wrap_text_for_single_line + (message, message_left, line_max, &m); if (!eaten) { str_free (&m); @@ -6866,6 +6867,10 @@ wrap_message (const char *message, message += eaten; message_left -= eaten; } + + if (message_left) + str_vector_add (output, message); + return true; error: