Mercurial > vim
comparison src/ex_eval.c @ 18699:1febd1aa9930 v8.1.2341
patch 8.1.2341: not so easy to interrupt a script programatically
Commit: https://github.com/vim/vim/commit/67a2deb9cb4ac2224cb1e4d240a5d0659f036264
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Nov 25 00:05:32 2019 +0100
patch 8.1.2341: not so easy to interrupt a script programatically
Problem: Not so easy to interrupt a script programatically.
Solution: Add the interrupt() function. (Yasuhiro Matsumoto, closes https://github.com/vim/vim/issues/2834)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 25 Nov 2019 00:15:06 +0100 |
parents | 0f7ae8010787 |
children | 8f05b3cf8557 |
comparison
equal
deleted
inserted
replaced
18698:13e7c756367c | 18699:1febd1aa9930 |
---|---|
83 * cancelling expression evaluation after a function call caused an immediate | 83 * cancelling expression evaluation after a function call caused an immediate |
84 * abort. Note that the first emsg() call temporarily resets "force_abort" | 84 * abort. Note that the first emsg() call temporarily resets "force_abort" |
85 * until the throw point for error messages has been reached. That is, during | 85 * until the throw point for error messages has been reached. That is, during |
86 * cancellation of an expression evaluation after an aborting function call or | 86 * cancellation of an expression evaluation after an aborting function call or |
87 * due to a parsing error, aborting() always returns the same value. | 87 * due to a parsing error, aborting() always returns the same value. |
88 * "got_int" is also set by calling interrupt(). | |
88 */ | 89 */ |
89 int | 90 int |
90 aborting(void) | 91 aborting(void) |
91 { | 92 { |
92 return (did_emsg && force_abort) || got_int || did_throw; | 93 return (did_emsg && force_abort) || got_int || did_throw; |