]> git.notmuchmail.org Git - notmuch/blobdiff - notmuch-tag.c
lib: Release resources if notmuch_database_open fails
[notmuch] / notmuch-tag.c
index 292c5da3f824a222caceed290109cabed40e959c..44fd61f6811db84d8e437f37247404140764556a 100644 (file)
@@ -26,7 +26,12 @@ static void
 handle_sigint (unused (int sig))
 {
     static char msg[] = "Stopping...         \n";
-    (void) write(2, msg, sizeof(msg)-1);
+
+    /* This write is "opportunistic", so it's okay to ignore the
+     * result.  It is not required for correctness, and if it does
+     * fail or produce a short write, we want to get out of the signal
+     * handler as quickly as possible, not retry it. */
+    IGNORE_RESULT (write (2, msg, sizeof(msg)-1));
     interrupted = 1;
 }