aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2021-08-01 01:53:52 -0400
committerJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2021-08-01 11:26:53 -0400
commit34f3c5cc9604e6ef241bd690b94e2f2593d03b55 (patch)
tree7869e79e8b79a4bc65fc9aa1098163789f2dc17a /src
parent51251e1dc74ce17bb083c002c2e5d5b34ce4e402 (diff)
downloadrneovim-34f3c5cc9604e6ef241bd690b94e2f2593d03b55.tar.gz
rneovim-34f3c5cc9604e6ef241bd690b94e2f2593d03b55.tar.bz2
rneovim-34f3c5cc9604e6ef241bd690b94e2f2593d03b55.zip
vim-patch:8.2.3167: get E12 in a job callback when searching for tags
Problem: Get E12 in a job callback when searching for tags. (Andy Stewart) Solution: Use the sandbox only for executing a command, not for searching. (closes vim/vim#8511) https://github.com/vim/vim/commit/547f94f33098b060da9d62c29d9fcbe9bf1e2b11 N/A patches for version.c: vim-patch:8.2.3164: MS-Windows: reported version lacks patchlevel Problem: MS-Windows: reported version lacks patchlevel, causing some update tools to update too often. (Klaus Frank) Solution: Add the patchlevel to the version. (Christian Brabandt) https://github.com/vim/vim/commit/0894e0d8087aad4d467fd7b3d87b1930fe661916 vim-patch:8.2.3192: build failure with small version Problem: Build failure with small version (Tony Mechelynck). Solution: Remove stray #ifdef. https://github.com/vim/vim/commit/11d7e62f1d29fdd7a88b86131b7bbb853f29fe8b vim-patch:8.2.3208: dynamic library load error does not mention why it failed Problem: Dynamic library load error does not mention why it failed. Solution: Add the error message. (Martin Tournoij, closes vim/vim#8621) https://github.com/vim/vim/commit/1a3e5747b7df7ddda312bbfd18e04fc2122001fb vim-patch:8.2.3214: MS-Windows: passing /D does not set the install location Problem: MS-Windows: passing /D does not set the install location. Solution: Adjust how the installer uses $VIM. Update the documentation. (Christian Brabandt, closes vim/vim#8605) https://github.com/vim/vim/commit/7d60384a00755e5c0112cebeb5e232fc133c9eca vim-patch:8.2.3231: build failure with small features Problem: Build failure with small features. Solution: Adjust #ifdef. https://github.com/vim/vim/commit/9088784972c0ed72997de8752964d6b587218778 vim-patch:8.2.3243: MS-Windows: "edit with multiple Vim" choice is less useful Problem: MS-Windows: the "edit with multiple Vim" choice is not that useful. Solution: Change it to "Edit with multiple tabs". (Michael Soyka, closes vim/vim#8645) https://github.com/vim/vim/commit/83cd0156e01b5befadf12ee66bc26436ee8d023f vim-patch:8.2.3247: using uninitialized memory when checking for crypt method Problem: Using uninitialized memory when checking for crypt method. Solution: Check the header length before using the salt and seed. https://github.com/vim/vim/commit/77ab4e28a26a92628bc85cd580c1bfa2b6230be6 vim-patch:8.2.3250: MS-Windows: cannot build with libsodium Problem: MS-Windows: cannot build with libsodium. Solution: Change FEAT_SODIUM into HAVE_SODIUM. (Christian Brabandt, closes vim/vim#8668, closes vim/vim#8663) https://github.com/vim/vim/commit/1790be6cb6f2edfd8a833dd848b8df02cef599cf vim-patch:8.2.3253: channel test fails randomly Problem: Channel test fails randomly. Solution: Add a sleep after sending the "echoerr" command. (Michael Soyka) https://github.com/vim/vim/commit/890ee4e2be1dca0c07a91f836e26baead952ae7c vim-patch:8.2.3260: build failure with small features Problem: Build failure with small features. Solution: Add #ifdef. https://github.com/vim/vim/commit/335c8c7b206df776b59fb63a1c7f91c8b1425398
Diffstat (limited to 'src')
-rw-r--r--src/nvim/globals.h2
-rw-r--r--src/nvim/tag.c29
2 files changed, 16 insertions, 15 deletions
diff --git a/src/nvim/globals.h b/src/nvim/globals.h
index 4012cc5897..96acca4ac7 100644
--- a/src/nvim/globals.h
+++ b/src/nvim/globals.h
@@ -501,7 +501,7 @@ EXTERN volatile int full_screen INIT(= false);
/// Non-zero when only "safe" commands are allowed, e.g. when sourcing .exrc or
/// .vimrc in current directory.
-EXTERN int secure INIT(= false);
+EXTERN int secure INIT(= 0);
/// Non-zero when changing text and jumping to another window/buffer is not
/// allowed.
diff --git a/src/nvim/tag.c b/src/nvim/tag.c
index a236adee06..d6c6b064b2 100644
--- a/src/nvim/tag.c
+++ b/src/nvim/tag.c
@@ -2611,7 +2611,6 @@ static int jumpto_tag(
int keep_help // keep help flag (FALSE for cscope)
)
{
- int save_secure;
int save_magic;
bool save_p_ws;
int save_p_scs, save_p_ic;
@@ -2766,9 +2765,6 @@ static int jumpto_tag(
curwin->w_set_curswant = true;
postponed_split = 0;
- save_secure = secure;
- secure = 1;
- ++sandbox;
save_magic = p_magic;
p_magic = false; // always execute with 'nomagic'
// Save value of no_hlsearch, jumping to a tag is not a real search
@@ -2866,21 +2862,26 @@ static int jumpto_tag(
* of the line. May need to correct that here. */
check_cursor();
} else {
- curwin->w_cursor.lnum = 1; /* start command in line 1 */
+ const int save_secure = secure;
+
+ // Setup the sandbox for executing the command from the tags file.
+ secure = 1;
+ sandbox++;
+ curwin->w_cursor.lnum = 1; // start command in line 1
do_cmdline_cmd((char *)pbuf);
retval = OK;
+
+ // When the command has done something that is not allowed make sure
+ // the error message can be seen.
+ if (secure == 2) {
+ wait_return(true);
+ }
+ secure = save_secure;
+ sandbox--;
}
- /*
- * When the command has done something that is not allowed make sure
- * the error message can be seen.
- */
- if (secure == 2)
- wait_return(TRUE);
- secure = save_secure;
p_magic = save_magic;
- --sandbox;
- /* restore no_hlsearch when keeping the old search pattern */
+ // restore no_hlsearch when keeping the old search pattern
if (search_options) {
set_no_hlsearch(save_no_hlsearch);
}