changeset 20599:ad69150c10f9

doveadm: Streamline tabunescape
author Aki Tuomi <aki.tuomi@dovecot.fi>
date Mon, 08 Aug 2016 09:29:26 +0300
parents 5b6e44fc3626
children 9af7c7196540
files src/doveadm/server-connection.c
diffstat 1 files changed, 4 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/src/doveadm/server-connection.c	Wed Aug 03 12:46:21 2016 +0300
+++ b/src/doveadm/server-connection.c	Mon Aug 08 09:29:26 2016 +0300
@@ -145,12 +145,9 @@
 
 static void stream_data(string_t *str, const unsigned char *data, size_t size)
 {
-	const char *text;
-
 	str_truncate(str, 0);
-	str_append_n(str, data, size);
-	text = str_tabunescape(str_c_modifiable(str));
-	doveadm_print_stream(text, strlen(text));
+	str_append_tabunescaped(str, data, size);
+	doveadm_print_stream(str->data, str->used);
 }
 
 static void server_flush_field(struct server_connection *conn, string_t *str,
@@ -162,12 +159,9 @@
 			stream_data(str, data, size);
 		doveadm_print_stream("", 0);
 	} else {
-		const char *text;
-
 		str_truncate(str, 0);
-		str_append_n(str, data, size);
-		text = str_tabunescape(str_c_modifiable(str));
-		doveadm_print(text);
+		str_append_tabunescaped(str, data, size);
+		doveadm_print(str_c(str));
 	}
 }