Hi Daniel,

On Fri, Nov 4, 2016 at 1:50 PM, Daniel Hahler <[email protected]> wrote:
> Here is a test case:
>
> set errorformat=%m
> lgetexpr '?'
>
> try
>   call DoesNotExit()
> catch
>   lgetexpr '1'
> finally
>   lgetexpr '1'
> endtry
>
> if getloclist(0)[0].text != 1
>   echoerr 'laddexpr was not called'
> endif
>
> What about using aborting() instead of did_throw || force_abort?
>

It looks like using aborting() in this case fixes the issue. All the quickfix
related tests are also passing. But I am not sure about the side effects
of this change.

>
> But even then it seems strange to handle it there like this, especially for
> cases where no autocommand has been called (and the status might not have
> been checked before, in case some ran successfully).
>

I think the code can be changed to the following:

   if (apply_autocmds(....))
              if (aborting())
                    return;

- Yegappan

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui