From 0d3e6bddbf9a82c4414bf77b84123c6611db6889 Mon Sep 17 00:00:00 2001 From: hiro Date: Wed, 10 Aug 2011 05:27:19 +0000 Subject: libsylph/procmime.c: removed alloca() calls. git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@2933 ee746299-78ed-0310-b773-934348b2243d --- ChangeLog | 4 ++++ libsylph/procmime.c | 20 +++++++++----------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8c50e582..c5fa62e2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2011-08-10 + + * libsylph/procmime.c: removed alloca() calls. + 2011-08-03 * src/quick_search.c: applied a patch to fix quick search text color diff --git a/libsylph/procmime.c b/libsylph/procmime.c index 8fdb5bf9..a8af27ac 100644 --- a/libsylph/procmime.c +++ b/libsylph/procmime.c @@ -351,22 +351,20 @@ void procmime_scan_multipart_message(MimeInfo *mimeinfo, FILE *fp) void procmime_scan_encoding(MimeInfo *mimeinfo, const gchar *encoding) { - gchar *buf; - - Xstrdup_a(buf, encoding, return); + gchar *enc; g_free(mimeinfo->encoding); + enc = mimeinfo->encoding = g_strstrip(g_strdup(encoding)); - mimeinfo->encoding = g_strdup(g_strstrip(buf)); - if (!g_ascii_strncasecmp(buf, "7bit", 4)) + if (!g_ascii_strncasecmp(enc, "7bit", 4)) mimeinfo->encoding_type = ENC_7BIT; - else if (!g_ascii_strncasecmp(buf, "8bit", 4)) + else if (!g_ascii_strncasecmp(enc, "8bit", 4)) mimeinfo->encoding_type = ENC_8BIT; - else if (!g_ascii_strncasecmp(buf, "quoted-printable", 16)) + else if (!g_ascii_strncasecmp(enc, "quoted-printable", 16)) mimeinfo->encoding_type = ENC_QUOTED_PRINTABLE; - else if (!g_ascii_strncasecmp(buf, "base64", 6)) + else if (!g_ascii_strncasecmp(enc, "base64", 6)) mimeinfo->encoding_type = ENC_BASE64; - else if (!g_ascii_strncasecmp(buf, "x-uuencode", 10)) + else if (!g_ascii_strncasecmp(enc, "x-uuencode", 10)) mimeinfo->encoding_type = ENC_X_UUENCODE; else mimeinfo->encoding_type = ENC_UNKNOWN; @@ -1488,7 +1486,7 @@ gchar *procmime_get_mime_type(const gchar *filename) static GHashTable *mime_type_table = NULL; MimeType *mime_type; const gchar *p; - gchar *ext; + gchar ext[64]; static gboolean no_mime_type_table = FALSE; if (no_mime_type_table) @@ -1506,7 +1504,7 @@ gchar *procmime_get_mime_type(const gchar *filename) p = strrchr(filename, '.'); if (!p) return NULL; - Xstrdup_a(ext, p + 1, return NULL); + strncpy2(ext, p + 1, sizeof(ext)); g_strdown(ext); mime_type = g_hash_table_lookup(mime_type_table, ext); if (mime_type) { -- cgit v1.2.3