From: Peter Krempa Date: Thu, 24 Oct 2019 06:49:57 +0000 (+0200) Subject: util: buffer: Simplify escape buffer allocations X-Git-Tag: v5.9.0-rc1~16 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=241057681ab9ea67c122bae58293e07c90f80824;p=thirdparty%2Flibvirt.git util: buffer: Simplify escape buffer allocations Replace combinations of xalloc_oversized and VIR_ALLOC_N_QUIET by using g_malloc0_n which does the checking internally. This conversion is done with a semantic difference and slightly higher memory requirements as I've opted to allocate one chunk more than necessary rather than trying to accomodate the NUL byte separately. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko --- diff --git a/src/util/virbuffer.c b/src/util/virbuffer.c index a2b5aa8508..bcf9042573 100644 --- a/src/util/virbuffer.c +++ b/src/util/virbuffer.c @@ -467,11 +467,7 @@ virBufferEscapeString(virBufferPtr buf, const char *format, const char *str) return; } - if (xalloc_oversized(6, len) || - VIR_ALLOC_N_QUIET(escaped, 6 * len + 1) < 0) { - virBufferSetError(buf, errno); - return; - } + escaped = g_malloc0_n(len + 1, 6); cur = str; out = escaped; @@ -616,11 +612,7 @@ virBufferEscape(virBufferPtr buf, char escape, const char *toescape, return; } - if (xalloc_oversized(2, len) || - VIR_ALLOC_N_QUIET(escaped, 2 * len + 1) < 0) { - virBufferSetError(buf, errno); - return; - } + escaped = g_malloc0_n(len + 1, 2); cur = str; out = escaped; @@ -715,11 +707,8 @@ virBufferEscapeShell(virBufferPtr buf, const char *str) if (*str) { len = strlen(str); - if (xalloc_oversized(4, len) || - VIR_ALLOC_N_QUIET(escaped, 4 * len + 3) < 0) { - virBufferSetError(buf, errno); - return; - } + + escaped = g_malloc0_n(len + 1, 4); } else { virBufferAddLit(buf, "''"); return;