* lib: fixes for make line35/make cc10

This commit is contained in:
djcb 2012-08-07 12:02:44 +03:00
parent 558a6fd0b0
commit d7dabca0b6
2 changed files with 62 additions and 42 deletions

View File

@ -106,44 +106,54 @@ get_matching_part_index (MuMsg *msg, MuMsgOptions opts,
static void
accumulate_text (MuMsg *msg, MuMsgPart *part, GString **gstrp)
accumulate_text_message (MuMsg *msg, MuMsgPart *part, GString **gstrp)
{
if (GMIME_IS_MESSAGE(part->data)) {
const gchar *str;
char *adrs;
GMimeMessage *mimemsg;
InternetAddressList *addresses;
/* put sender, recipients and subject in the string, so they
* can be indexed as well */
mimemsg = GMIME_MESSAGE (part->data);
str = g_mime_message_get_sender (mimemsg);
g_string_append_printf
(*gstrp, "%s%s", str ? str : "", str ? "\n" : "");
str = g_mime_message_get_subject (mimemsg);
g_string_append_printf
(*gstrp, "%s%s", str ? str : "", str ? "\n" : "");
const gchar *str;
char *adrs;
GMimeMessage *mimemsg;
InternetAddressList *addresses;
/* put sender, recipients and subject in the string, so they
* can be indexed as well */
mimemsg = GMIME_MESSAGE (part->data);
str = g_mime_message_get_sender (mimemsg);
g_string_append_printf
(*gstrp, "%s%s", str ? str : "", str ? "\n" : "");
str = g_mime_message_get_subject (mimemsg);
g_string_append_printf
(*gstrp, "%s%s", str ? str : "", str ? "\n" : "");
addresses = g_mime_message_get_all_recipients (mimemsg);
adrs = internet_address_list_to_string (addresses, FALSE);
g_object_unref (addresses);
g_string_append_printf
(*gstrp, "%s%s", adrs ? adrs : "", adrs ? "\n" : "");
g_free (adrs);
} else if (GMIME_IS_PART (part->data)) {
GMimeContentType *ctype;
gboolean err;
char *txt;
ctype = g_mime_object_get_content_type ((GMimeObject*)part->data);
if (!g_mime_content_type_is_type (ctype, "text", "plain"))
return; /* not plain text */
txt = mu_msg_mime_part_to_string
((GMimePart*)part->data, &err);
if (txt)
g_string_append (*gstrp, txt);
g_free (txt);
}
}
static void
accumulate_text_part (MuMsg *msg, MuMsgPart *part, GString **gstrp)
{
GMimeContentType *ctype;
gboolean err;
char *txt;
ctype = g_mime_object_get_content_type ((GMimeObject*)part->data);
if (!g_mime_content_type_is_type (ctype, "text", "plain"))
return; /* not plain text */
txt = mu_msg_mime_part_to_string
((GMimePart*)part->data, &err);
if (txt)
g_string_append (*gstrp, txt);
g_free (txt);
}
static void
accumulate_text (MuMsg *msg, MuMsgPart *part, GString **gstrp)
{
if (GMIME_IS_MESSAGE(part->data))
accumulate_text_message (msg, part, gstrp);
else if (GMIME_IS_PART (part->data))
accumulate_text_part (msg, part, gstrp);
}
char*
mu_msg_part_get_text (MuMsg *msg, MuMsgPart *self, MuMsgOptions opts,
@ -273,11 +283,25 @@ get_part_size (GMimePart *part)
/* return TRUE; */
/* } */
static void
cleanup_filename (char *fname)
{
gchar *cur;
/* remove slashes, spaces, colons... */
for (cur = fname; *cur; ++cur)
if (*cur == '/' || *cur == ' ' || *cur == ':')
*cur = '-';
}
static char*
mime_part_get_filename (GMimeObject *mobj, unsigned index,
gboolean construct_if_needed)
{
gchar *fname, *cur;
gchar *fname;
fname = NULL;
@ -304,9 +328,7 @@ mime_part_get_filename (GMimeObject *mobj, unsigned index,
fname = g_strdup_printf ("%u.part", index);
/* remove slashes, spaces, colons... */
for (cur = fname; *cur; ++cur)
if (*cur == '/' || *cur == ' ' || *cur == ':')
*cur = '-';
cleanup_filename (fname);
return fname;
}

View File

@ -415,14 +415,14 @@ mu_msg_to_sexp (MuMsg *msg, unsigned docid, const MuMsgIterThreadInfo *ti,
g_return_val_if_fail (msg, NULL);
g_return_val_if_fail (!((opts & MU_MSG_OPTION_HEADERS_ONLY) &&
(opts & MU_MSG_OPTION_EXTRACT_IMAGES)),
NULL);
(opts & MU_MSG_OPTION_EXTRACT_IMAGES)),NULL);
gstr = g_string_sized_new
((opts & MU_MSG_OPTION_HEADERS_ONLY) ? 1024 : 8192);
g_string_append (gstr, "(\n");
if (docid != 0)
g_string_append_printf (gstr, "\t:docid %u\n", docid);
if (docid == 0)
g_string_append (gstr, "(\n");
else
g_string_append_printf (gstr, "(\n\t:docid %u\n", docid);
if (ti)
append_sexp_thread_info (gstr, ti);
@ -436,14 +436,12 @@ mu_msg_to_sexp (MuMsg *msg, unsigned docid, const MuMsgIterThreadInfo *ti,
t = mu_msg_get_date (msg);
/* weird time format for emacs 29-bit ints...*/
g_string_append_printf (gstr,"\t:date (%u %u 0)\n", (unsigned)(t >> 16),
(unsigned)(t & 0xffff));
g_string_append_printf (gstr, "\t:size %u\n",
g_string_append_printf (gstr,"\t:date (%u %u 0)\n\t:size %u\n",
(unsigned)(t >> 16), (unsigned)(t & 0xffff),
(unsigned)mu_msg_get_size (msg));
append_sexp_attr (gstr, "message-id", mu_msg_get_msgid (msg));
append_sexp_attr (gstr, "path", mu_msg_get_path (msg));
append_sexp_attr (gstr, "maildir", mu_msg_get_maildir (msg));
g_string_append_printf (gstr, "\t:priority %s\n",
mu_msg_prio_name(mu_msg_get_prio(msg)));
append_sexp_flags (gstr, msg);