* mu-cmd-server.c, TODO: provide error msg when attempting to move to existing file

This commit is contained in:
djcb
2012-06-07 00:16:52 +03:00
parent 6f9f852386
commit 52c8b68352
2 changed files with 12 additions and 15 deletions

2
TODO
View File

@ -22,7 +22,6 @@
- sorting - sorting
- refactor fill_database function in test cases - refactor fill_database function in test cases
- *BUG* no error note if target message already exists (when moving)
- *BUG* having multiple header views visible - *BUG* having multiple header views visible
- *BUG* fix for strings where len (g_utf8_strdown (str)) > len (str) - *BUG* fix for strings where len (g_utf8_strdown (str)) > len (str)
- *BUG* don't remove unknown message flags when moving - *BUG* don't remove unknown message flags when moving
@ -43,6 +42,7 @@
- rich text composing (with org-mode) - rich text composing (with org-mode)
- let message-mode deal with burying/killing compose buffers - let message-mode deal with burying/killing compose buffers
- *FIX* add runtime check for imagemagick - *FIX* add runtime check for imagemagick
- *FIX* no error note if target message already exists (when moving)

View File

@ -887,12 +887,10 @@ do_move (MuStore *store, unsigned docid, MuMsg *msg, const char *maildir,
static gboolean static gboolean
move_msgid_maybe (MuStore *store, MuQuery *query, GSList *args, GError **err) move_msgid_maybe (MuStore *store, MuQuery *query, GSList *args, GError **err)
{ {
const char *maildir, *msgid, *flagstr;
GSList *docids, *cur; GSList *docids, *cur;
const char *maildir = get_string_from_args (args, "maildir", TRUE, err);
maildir = get_string_from_args (args, "maildir", TRUE, err); const char *msgid = get_string_from_args (args, "msgid", TRUE, err);
msgid = get_string_from_args (args, "msgid", TRUE, err); const char *flagstr = get_string_from_args (args, "flags", TRUE, err);
flagstr = get_string_from_args (args, "flags", TRUE, err);
/* you cannot use 'maildir' for multiple messages at once */ /* you cannot use 'maildir' for multiple messages at once */
if (!msgid || !flagstr || maildir ) if (!msgid || !flagstr || maildir )
@ -921,7 +919,9 @@ move_msgid_maybe (MuStore *store, MuQuery *query, GSList *args, GError **err)
break; break;
} }
do_move (store, docid, msg, NULL, flags, err); if ((do_move (store, docid, msg, NULL, flags, err) != MU_OK))
print_and_clear_g_error (err);
mu_msg_unref (msg); mu_msg_unref (msg);
} }
@ -958,12 +958,8 @@ cmd_move (MuStore *store, MuQuery *query, GSList *args, GError **err)
flagstr = get_string_from_args (args, "flags", TRUE, err); flagstr = get_string_from_args (args, "flags", TRUE, err);
docid = determine_docid (query, args, err); docid = determine_docid (query, args, err);
if (docid == MU_STORE_INVALID_DOCID) { if (docid == MU_STORE_INVALID_DOCID ||
print_and_clear_g_error (err); !(msg = mu_store_get_msg (store, docid, err))) {
return MU_OK;
}
if (!(msg = mu_store_get_msg (store, docid, err))) {
print_and_clear_g_error (err); print_and_clear_g_error (err);
return MU_OK; return MU_OK;
} }
@ -985,7 +981,8 @@ cmd_move (MuStore *store, MuQuery *query, GSList *args, GError **err)
goto leave; goto leave;
} }
do_move (store, docid, msg, maildir, flags, err); if ((do_move (store, docid, msg, maildir, flags, err) != MU_OK))
print_and_clear_g_error (err);
leave: leave:
mu_msg_unref (msg); mu_msg_unref (msg);