unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* [PATCH 1/1] cli: propagate batch tagging warnings to exit value
@ 2013-01-12  7:40 Tomi Ollila
  2013-01-13 14:37 ` David Bremner
  2013-01-14 23:52 ` David Bremner
  0 siblings, 2 replies; 4+ messages in thread
From: Tomi Ollila @ 2013-01-12  7:40 UTC (permalink / raw)
  To: notmuch; +Cc: tomi.ollila

In case last input for batch tagging was either invalid or skippable
line, notmuch command exited with non-zero value.
After this change if there is at least one invalid line, notmuch
command will exit with non-zero value. Additionally, skipped lines
(last or other) doesn't cause non-zero value to be returned.
---
 notmuch-tag.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/notmuch-tag.c b/notmuch-tag.c
index 6408bab..b54c55d 100644
--- a/notmuch-tag.c
+++ b/notmuch-tag.c
@@ -140,6 +140,7 @@ tag_file (void *ctx, notmuch_database_t *notmuch, tag_op_flag_t flags,
     size_t line_size = 0;
     ssize_t line_len;
     int ret = 0;
+    int warn = 0;
     tag_op_list_t *tag_ops;
 
     tag_ops = tag_op_list_create (ctx);
@@ -154,8 +155,13 @@ tag_file (void *ctx, notmuch_database_t *notmuch, tag_op_flag_t flags,
 	ret = parse_tag_line (ctx, line, TAG_FLAG_NONE,
 			      &query_string, tag_ops);
 
-	if (ret > 0)
+	if (ret > 0) {
+	    if (ret != TAG_PARSE_SKIPPED)
+		/* remember there has been problematic lines */
+		warn = 1;
+	    ret = 0;
 	    continue;
+	}
 
 	if (ret < 0)
 	    break;
@@ -168,7 +174,7 @@ tag_file (void *ctx, notmuch_database_t *notmuch, tag_op_flag_t flags,
     if (line)
 	free (line);
 
-    return ret;
+    return ret || warn;
 }
 
 int
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-01-14 23:52 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-12  7:40 [PATCH 1/1] cli: propagate batch tagging warnings to exit value Tomi Ollila
2013-01-13 14:37 ` David Bremner
2013-01-13 14:41   ` Jani Nikula
2013-01-14 23:52 ` David Bremner

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).