Mercurial > vim
comparison src/message.c @ 23102:3239b0f3c592 v8.2.2097
patch 8.2.2097: Vim9: using :silent! when calling a function prevents abort
Commit: https://github.com/vim/vim/commit/56602ba153af7130b76daf83933922aaea3e2646
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Dec 5 21:22:08 2020 +0100
patch 8.2.2097: Vim9: using :silent! when calling a function prevents abort
Problem: Vim9: using :silent! when calling a function prevents abortng that
function.
Solution: Add emsg_silent_def and did_emsg_def.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 05 Dec 2020 21:30:03 +0100 |
parents | fb27d3a7a24b |
children | 0bd44e94dd14 |
comparison
equal
deleted
inserted
replaced
23101:fe9d456dc33b | 23102:3239b0f3c592 |
---|---|
695 redir_write(p, -1); | 695 redir_write(p, -1); |
696 vim_free(p); | 696 vim_free(p); |
697 } | 697 } |
698 redir_write(s, -1); | 698 redir_write(s, -1); |
699 } | 699 } |
700 #ifdef FEAT_EVAL | |
701 // Only increment did_emsg_def when :silent! wasn't used inside the | |
702 // :def function. | |
703 if (emsg_silent == emsg_silent_def) | |
704 ++did_emsg_def; | |
705 #endif | |
700 #ifdef FEAT_JOB_CHANNEL | 706 #ifdef FEAT_JOB_CHANNEL |
701 ch_log(NULL, "ERROR silent: %s", (char *)s); | 707 ch_log(NULL, "ERROR silent: %s", (char *)s); |
702 #endif | 708 #endif |
703 return TRUE; | 709 return TRUE; |
704 } | 710 } |