<<< Date Index >>>     <<< Thread Index >>>

Mutt recursion crash with account hooks



With recent changes to the mutt source, an infinite recursive loop has been created in some configuration scenarios. Specifically, if you have account-hooks to set your $folder and then attempt to set your $folder. For example:

    account-hook 'me@server' \
        'set folder="imaps://me@server/INBOX";\
         set spoolfile="imaps://me@server/INBOX"'

    set folder=imaps://me@server/INBOX

What will happen is that while parsing the “set folder” line, mutt will attempt to expand the path specified, which now requires triggering the account-hooks. The account hook will attempt to expand the path specified, which will re-trigger the account hook, which will re-attempt expanding the path specified, and this will continue recursing until the stack is thoroughly smashed.

This didn’t used to happen.

I suppose my question is: is this account-hook unreasonable? Should it be turned into a folder-hook? Should mutt perhaps do something a bit more useful than crashing mysteriously in this case? Perhaps mutt should detect that $folder is being set inside an account hook and simply spit out an error? If there are settings that will cause mutt to CRASH (such as this one), I think we should go the extra mile to give a useful error message instead.

~Kyle
--
No one really listens to anyone else, and if you try it for a while you'll see why.
                                                  -- Mignon McLaughlin

Attachment: pgp7u5vIUL_GZ.pgp
Description: PGP signature