X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/b56c88e2847c582f9b18ae5bbda44f033cd49c42..2ca027a15f209e2a73b8c7da9115167f2dc8f8a2:/uip/inc.c diff --git a/uip/inc.c b/uip/inc.c index bf8216f4..7673da32 100644 --- a/uip/inc.c +++ b/uip/inc.c @@ -656,7 +656,7 @@ go_to_it: } else { if (ferror(pf) || fclose (pf)) { int e = errno; - unlink (cp); + (void) m_unlink (cp); pop_quit (); errno = e; adios (cp, "write error on"); @@ -666,6 +666,8 @@ go_to_it: if (trnflag && pop_dele (i) == NOTOK) adios (NULL, "%s", response); + + scan_finished(); } if (pop_quit () == NOTOK) @@ -751,7 +753,7 @@ go_to_it: break; if (ferror(sf) || fflush(pf) || ferror(pf)) { int e = errno; - fclose(pf); fclose(sf); unlink(cp); + fclose(pf); fclose(sf); (void) m_unlink(cp); errno = e; adios(cp, "copy error %s -> %s", sp, cp); } @@ -798,16 +800,18 @@ go_to_it: } if (ferror(pf) || fclose (pf)) { int e = errno; - unlink (cp); + (void) m_unlink (cp); errno = e; adios (cp, "write error on"); } pf = NULL; free (cp); - if (trnflag && unlink (sp) == NOTOK) + if (trnflag && m_unlink (sp) == NOTOK) adios (sp, "couldn't unlink"); free (sp); /* Free Maildir[i]->filename */ + + scan_finished(); } free (Maildir); /* From now on Maildir is just a flag - don't dref! */ } @@ -847,7 +851,7 @@ go_to_it: close (newfd); else admonish (newmail, "error zero'ing"); - unlink(map_name(newmail)); + (void) m_unlink(map_name(newmail)); } } else { if (noisy)