X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=sbr%2Ffolder_pack.c;h=b0bc67b3b249907c4e1ed1ebfc71bf354ea980a3;hp=05365a86a3a3b29a2a9c250f5a908c308ae7c5e1;hb=5dd6771b28c257af405d7248639ed0e3bcdce38b;hpb=1691e80890e5d8ba258c51c214a3e91880e1db2b diff --git a/sbr/folder_pack.c b/sbr/folder_pack.c index 05365a8..b0bc67b 100644 --- a/sbr/folder_pack.c +++ b/sbr/folder_pack.c @@ -3,7 +3,9 @@ * folder_pack.c -- pack (renumber) the messages in a folder * -- into a contiguous range from 1 to n. * - * $Id$ + * This code is Copyright (c) 2002, by the authors of nmh. See the + * COPYRIGHT file in the root directory of the nmh distribution for + * complete copyright information. */ #include @@ -49,6 +51,16 @@ folder_pack (struct msgs **mpp, int verbose) if (verbose) printf ("message %s becomes %s\n", oldmsg, newmsg); + /* + * Invoke the external refile hook for each message being renamed. + * This is done before the file is renamed so that the old message + * file is around for the hook. + */ + + (void)snprintf(oldmsg, sizeof (oldmsg), "%s/%d", mp->foldpath, msgnum); + (void)snprintf(newmsg, sizeof (newmsg), "%s/%d", mp->foldpath, hole); + ext_hook("ref-hook", oldmsg, newmsg); + /* move the message file */ if (rename (oldmsg, newmsg) == -1) { advise (newmsg, "unable to rename %s to", oldmsg);