clear msgflags in folder_delmsg
[mmh] / sbr / folder_delmsgs.c
index 17b99be..b145e0b 100644 (file)
@@ -6,6 +6,8 @@
 ** complete copyright information.
 */
 
+#include <sysexits.h>
+#include <unistd.h>
 #include <h/mh.h>
 
 /*
@@ -26,7 +28,6 @@ folder_delmsgs(struct msgs *mp, int hook)
 
                /* unselect message */
                unset_selected(mp, msgnum);
-               mp->numsel--;
 
                snprintf(msgpath, sizeof (msgpath), "%s/%d",
                                mp->foldpath, msgnum);
@@ -44,13 +45,13 @@ folder_delmsgs(struct msgs *mp, int hook)
                }
 
                /* If removal was successful, decrement message count */
-               unset_exists(mp, msgnum);
+               clear_msg_flags(mp, msgnum);
                mp->nummsg--;
        }
 
        /* Sanity check */
        if (mp->numsel != 0)
-               adios(NULL, "oops, mp->numsel should be 0");
+               adios(EX_SOFTWARE, NULL, "oops, mp->numsel should be 0");
 
        /* Mark that the sequence information has changed */
        mp->msgflags |= SEQMOD;