]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
[Minor] Fix byte array allocation
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Wed, 29 Aug 2018 22:17:44 +0000 (23:17 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Wed, 29 Aug 2018 22:18:06 +0000 (23:18 +0100)
src/libmime/mime_encoding.c

index 2f0df38eb050745fd7c3e2c3ea96b4e2d90d59da..d3f255740b1ae43000d9bfb572f2ff900cafacc8 100644 (file)
@@ -651,18 +651,17 @@ rspamd_mime_text_part_maybe_convert (struct rspamd_task *task,
        GByteArray *part_content;
        rspamd_ftok_t charset_tok;
        struct rspamd_mime_part *part = text_part->mime_part;
-       gdouble t1, t2;
 
-       t1 = rspamd_get_ticks (TRUE);
        if (rspamd_str_has_8bit (text_part->raw.begin, text_part->raw.len)) {
                text_part->flags |= RSPAMD_MIME_TEXT_PART_FLAG_8BIT;
        }
 
-       part_content = rspamd_mempool_alloc0 (task->task_pool, sizeof (GByteArray));
-       part_content->data = rspamd_mempool_alloc (task->task_pool,
-                       text_part->parsed.len);
+       /* Allocate copy storage */
+       part_content = g_byte_array_sized_new (text_part->parsed.len);
        memcpy (part_content->data, text_part->parsed.begin, text_part->parsed.len);
        part_content->len = text_part->parsed.len;
+       rspamd_mempool_add_destructor (task->task_pool,
+                       (rspamd_mempool_destruct_t)g_byte_array_unref, part_content);
 
        if (rspamd_str_has_8bit (text_part->parsed.begin, text_part->parsed.len)) {
                text_part->flags |= RSPAMD_MIME_TEXT_PART_FLAG_8BIT_ENCODED;
@@ -729,8 +728,6 @@ rspamd_mime_text_part_maybe_convert (struct rspamd_task *task,
                rspamd_mime_text_part_ucs_from_utf (task, text_part);
                rspamd_mime_text_part_normalise (task, text_part);
                rspamd_mime_text_part_maybe_renormalise (task, text_part);
-               t2 = rspamd_get_ticks (TRUE);
-               msg_err_task ("conversion time: %.0f ticks", t2 - t1);
 
                return;
        }
@@ -752,6 +749,4 @@ rspamd_mime_text_part_maybe_convert (struct rspamd_task *task,
        }
 
        SET_PART_UTF (text_part);
-       t2 = rspamd_get_ticks (TRUE);
-       msg_err_task ("conversion time: %.0f ticks", t2 - t1);
 }