* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
*/
+#if HAVE_CONFIG_H
+# include "config.h"
+#endif
+
#include "mutt.h"
#include "mailbox.h"
#include "mutt_crypt.h"
+#ifdef USE_COMPRESSED
+#include "compress.h"
+#endif
+
#include <limits.h>
#include <string.h>
#include <stdlib.h>
goto error;
}
- mutt_extract_token (&command, s, (data & (M_FOLDERHOOK | M_SENDHOOK | M_ACCOUNTHOOK | M_REPLYHOOK)) ? M_TOKEN_SPACE : 0);
+ mutt_extract_token (&command, s, (data & (M_FOLDERHOOK | M_SENDHOOK | M_SEND2HOOK | M_ACCOUNTHOOK | M_REPLYHOOK)) ? M_TOKEN_SPACE : 0);
if (!command.data)
{
memset (&pattern, 0, sizeof (pattern));
pattern.data = safe_strdup (path);
}
+#ifdef USE_COMPRESSED
+ else if (data & (M_APPENDHOOK | M_OPENHOOK | M_CLOSEHOOK))
+ {
+ if (mutt_test_compress_command (command.data))
+ {
+ strfcpy (err->data, _("bad formatted command string"), err->dsize);
+ return (-1);
+ }
+ }
+#endif
else if (DefaultHook && !(data & (M_CHARSETHOOK | M_ACCOUNTHOOK))
&& (!WithCrypto || !(data & M_CRYPTHOOK))
)
ptr->rx.not == not &&
!mutt_strcmp (pattern.data, ptr->rx.pattern))
{
- if (data & (M_FOLDERHOOK | M_SENDHOOK | M_MESSAGEHOOK | M_ACCOUNTHOOK | M_REPLYHOOK))
+ if (data & (M_FOLDERHOOK | M_SENDHOOK | M_SEND2HOOK | M_MESSAGEHOOK | M_ACCOUNTHOOK | M_REPLYHOOK))
{
/* these hooks allow multiple commands with the same
* pattern, so if we've already seen this pattern/command pair, just
break;
}
- if (data & (M_SENDHOOK | M_SAVEHOOK | M_FCCHOOK | M_MESSAGEHOOK | M_REPLYHOOK))
+ if (data & (M_SENDHOOK | M_SEND2HOOK | M_SAVEHOOK | M_FCCHOOK | M_MESSAGEHOOK | M_REPLYHOOK))
{
if ((pat = mutt_pattern_comp (pattern.data,
- (data & (M_SENDHOOK | M_FCCHOOK)) ? 0 : M_FULL_MSG,
+ (data & (M_SENDHOOK | M_SEND2HOOK | M_FCCHOOK)) ? 0 : M_FULL_MSG,
err)) == NULL)
goto error;
}
}
if (current_hook_type == type)
{
- snprintf (err->data, err->dsize,
- _("unhook: Can't delete a %s from within a %s."),
+ snprintf (err->data, err->dsize, _("unhook: Can't delete a %s from within a %s."),
buf->data, buf->data);
return -1;
}