* fix line33 check

This commit is contained in:
Dirk-Jan C. Binnema 2011-05-19 20:22:55 +03:00
parent 228af3edee
commit 49858a6fc1
5 changed files with 60 additions and 48 deletions

View File

@ -337,8 +337,7 @@ ignore_dir_entry (struct dirent *entry, unsigned char d_type)
return TRUE;
/* ignore '.#evolution */
if ((name[1] == '#') &&
(strcmp (name, ".#evolution")))
if ((name[1] == '#') && (strcmp (name, ".#evolution")))
return TRUE;
return FALSE;
@ -683,22 +682,12 @@ mu_maildir_get_flags_from_path (const char *path)
!(info && info[0] == '2' && info[1] == ','))
goto leave;
for (cursor = info + 2; *cursor; ++cursor) {
switch (*cursor) {
case 'P': flags |= MU_MSG_FLAG_PASSED; break;
case 'T': flags |= MU_MSG_FLAG_TRASHED; break;
case 'R': flags |= MU_MSG_FLAG_REPLIED; break;
case 'S': flags |= MU_MSG_FLAG_SEEN; break;
case 'D': flags |= MU_MSG_FLAG_DRAFT; break;
case 'F': flags |= MU_MSG_FLAG_FLAGGED; break;
default: break; /* ignore */
}
}
for (cursor = info + 2; *cursor; ++cursor)
flags |= mu_msg_flag_from_file_char (*cursor);
/* the UNREAD pseudo flag => NEW OR NOT SEEN */
if (!(flags & MU_MSG_FLAG_SEEN))
flags |= MU_MSG_FLAG_UNREAD;
flags |= MU_MSG_FLAG_UNREAD;
leave:
g_free(info);
return flags;

View File

@ -763,20 +763,16 @@ mu_msg_file_get_str_field (MuMsgFile *self, MuMsgFieldId mfid, gboolean *do_free
switch (mfid) {
case MU_MSG_FIELD_ID_BCC:
*do_free = TRUE;
case MU_MSG_FIELD_ID_BCC: *do_free = TRUE;
return get_recipient (self, GMIME_RECIPIENT_TYPE_BCC);
case MU_MSG_FIELD_ID_BODY_TEXT:
*do_free = TRUE;
case MU_MSG_FIELD_ID_BODY_TEXT: *do_free = TRUE;
return get_body (self, FALSE);
case MU_MSG_FIELD_ID_BODY_HTML:
*do_free = TRUE;
case MU_MSG_FIELD_ID_BODY_HTML: *do_free = TRUE;
return get_body (self, TRUE);
case MU_MSG_FIELD_ID_CC:
*do_free = TRUE;
case MU_MSG_FIELD_ID_CC: *do_free = TRUE;
return get_recipient (self, GMIME_RECIPIENT_TYPE_CC);
case MU_MSG_FIELD_ID_FROM:
@ -788,8 +784,7 @@ mu_msg_file_get_str_field (MuMsgFile *self, MuMsgFieldId mfid, gboolean *do_free
case MU_MSG_FIELD_ID_SUBJECT:
return (char*)g_mime_message_get_subject (self->_mime_msg);
case MU_MSG_FIELD_ID_TO:
*do_free = TRUE;
case MU_MSG_FIELD_ID_TO: *do_free = TRUE;
return get_recipient (self, GMIME_RECIPIENT_TYPE_TO);
case MU_MSG_FIELD_ID_MSGID:
@ -798,8 +793,7 @@ mu_msg_file_get_str_field (MuMsgFile *self, MuMsgFieldId mfid, gboolean *do_free
case MU_MSG_FIELD_ID_MAILDIR:
return self->_maildir;
case MU_MSG_FIELD_ID_REFS:
*do_free = TRUE;
case MU_MSG_FIELD_ID_REFS: *do_free = TRUE;
return get_references_str (self);
default:

View File

@ -1,3 +1,5 @@
/* -*-mode: c; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-*/
/*
** Copyright (C) 2008-2010 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
**
@ -55,7 +57,7 @@ mu_msg_flag_from_char (char k)
case 'd': return MU_MSG_FLAG_DRAFT;
case 'f': return MU_MSG_FLAG_FLAGGED;
/* NEW OR NOT SEEN */
/* NEW OR NOT SEEN */
case 'u': return MU_MSG_FLAG_UNREAD;
case 'z': return MU_MSG_FLAG_SIGNED;
@ -67,11 +69,28 @@ mu_msg_flag_from_char (char k)
}
}
MuMsgFlags
mu_msg_flag_from_file_char (char k)
{
switch (g_ascii_tolower(k)) {
case 'n': return MU_MSG_FLAG_NEW;
case 'p': return MU_MSG_FLAG_PASSED;
case 'r': return MU_MSG_FLAG_REPLIED;
case 's': return MU_MSG_FLAG_SEEN;
case 't': return MU_MSG_FLAG_TRASHED;
case 'd': return MU_MSG_FLAG_DRAFT;
case 'f': return MU_MSG_FLAG_FLAGGED;
default: return 0;
}
}
const char*
mu_msg_flag_name (MuMsgFlags flag)
{
{
switch (flag) {
/* real maildir flags */
case MU_MSG_FLAG_NEW: return "new";
case MU_MSG_FLAG_PASSED: return "passed";
case MU_MSG_FLAG_REPLIED: return "replied";
@ -80,7 +99,7 @@ mu_msg_flag_name (MuMsgFlags flag)
case MU_MSG_FLAG_DRAFT: return "draft";
case MU_MSG_FLAG_FLAGGED: return "flagged";
/* ie., NEW or NOT SEEN */
/* ie., NEW or NOT SEEN */
case MU_MSG_FLAG_UNREAD: return "unread";
case MU_MSG_FLAG_SIGNED: return "signed";
@ -104,7 +123,7 @@ mu_msg_flag_char (MuMsgFlags flag)
case MU_MSG_FLAG_DRAFT: return 'd';
case MU_MSG_FLAG_FLAGGED: return 'f';
/* NEW OR NOT SEEN */
/* NEW OR NOT SEEN */
case MU_MSG_FLAG_UNREAD: return 'u';
case MU_MSG_FLAG_SIGNED: return 'z';

View File

@ -95,6 +95,23 @@ MuMsgFlags mu_msg_flags_from_str (const char* str) G_GNUC_PURE;
*/
MuMsgFlags mu_msg_flags_from_char (char c) G_GNUC_CONST;
/**
* convert the char-per-flag description into a MuMsgFlags value. The
* difference is that with 'mu_msg_flags_from_char' is that this
* function only cares about the chars that are part of the
* Maildir-standard (ie., in files), and that is ignores unknown chars
* (returns 0), rather than printing warnings
*
* @param c a character
*
* @return a MuMSgFlags value, or 0 if the char is not known as a
* maildir char
*/
MuMsgFlags mu_msg_flag_from_file_char (char k) G_GNUC_CONST;
/**
* get a string for a given set of flags, OR'ed in
* @param flags; one character per flag:

View File

@ -325,28 +325,25 @@ mu_output_json (MuMsgIter *iter, size_t *count)
mu_msg_iter_next (myiter), ++mycount) {
MuMsg *msg;
if (!(msg = mu_msg_iter_get_msg (iter, NULL)))
return FALSE;
if (mycount != 0)
g_print (",\n");
msg = mu_msg_iter_get_msg (iter, NULL); /* don't unref */
if (!msg)
return FALSE;
g_print ("\t\t{\n");
print_attr_json ("from", mu_msg_get_from (msg), TRUE);
print_attr_json ("to", mu_msg_get_to (msg),TRUE);
print_attr_json ("cc", mu_msg_get_cc (msg),TRUE);
print_attr_json ("subject", mu_msg_get_subject (msg),
TRUE);
print_attr_json ("subject", mu_msg_get_subject (msg), TRUE);
g_print ("\t\t\t\"date\":%u,\n",
(unsigned) mu_msg_get_date (msg));
g_print ("\t\t\t\"size\":%u,\n",
(unsigned) mu_msg_get_size (msg));
print_attr_json ("msgid", mu_msg_get_msgid (msg),TRUE);
print_attr_json ("path", mu_msg_get_path (msg),TRUE);
print_attr_json ("maildir", mu_msg_get_maildir (msg),
FALSE);
print_attr_json ("maildir", mu_msg_get_maildir (msg), FALSE);
g_print ("\t\t}");
}
g_print ("\t]\n}\n");
@ -387,23 +384,19 @@ mu_output_sexp (MuMsgIter *iter, size_t *count)
mu_msg_iter_next (myiter), ++mycount) {
MuMsg *msg;
if (!(msg = mu_msg_iter_get_msg (iter, NULL))) /* don't unref */
return FALSE;
if (mycount != 0)
g_print ("\n");
msg = mu_msg_iter_get_msg (iter, NULL); /* don't unref */
if (!msg)
return FALSE;
g_print (" (:message\n");
print_attr_sexp ("from", mu_msg_get_from (msg),TRUE);
print_attr_sexp ("to", mu_msg_get_to (msg),TRUE);
print_attr_sexp ("cc", mu_msg_get_cc (msg),TRUE);
print_attr_sexp ("subject", mu_msg_get_subject (msg),TRUE);
g_print (" (:date %u)\n",
(unsigned) mu_msg_get_date (msg));
g_print (" (:size %u)\n",
(unsigned) mu_msg_get_size (msg));
g_print (" (:date %u)\n", (unsigned) mu_msg_get_date (msg));
g_print (" (:size %u)\n", (unsigned) mu_msg_get_size (msg));
print_attr_sexp ("msgid", mu_msg_get_msgid (msg),TRUE);
print_attr_sexp ("path", mu_msg_get_path (msg),TRUE);
print_attr_sexp ("maildir", mu_msg_get_maildir (msg),FALSE);