Mercurial > vim
comparison src/map.c @ 19075:af1eca322b9e v8.2.0098
patch 8.2.0098: exe stack length can be wrong without being detected
Commit: https://github.com/vim/vim/commit/e31ee86859528a7ffe00405645547d494e522fa8
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Jan 7 20:59:34 2020 +0100
patch 8.2.0098: exe stack length can be wrong without being detected
Problem: Exe stack length can be wrong without being detected.
Solution: Add a check when ABORT_ON_INTERNAL_ERROR is defined.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 07 Jan 2020 21:00:07 +0100 |
parents | 847cc7932c42 |
children | f7081bd2680e |
comparison
equal
deleted
inserted
replaced
19074:d7a865d2db06 | 19075:af1eca322b9e |
---|---|
1916 int i; | 1916 int i; |
1917 char_u buf[3]; | 1917 char_u buf[3]; |
1918 int abbr; | 1918 int abbr; |
1919 int hash; | 1919 int hash; |
1920 buf_T *bp; | 1920 buf_T *bp; |
1921 ESTACK_CHECK_DECLARATION | |
1921 | 1922 |
1922 validate_maphash(); | 1923 validate_maphash(); |
1923 // avoids giving error messages | 1924 // avoids giving error messages |
1924 estack_push(ETYPE_INTERNAL, (char_u *)"mappings", 0); | 1925 estack_push(ETYPE_INTERNAL, (char_u *)"mappings", 0); |
1926 ESTACK_CHECK_SETUP | |
1925 | 1927 |
1926 // Do this once for each buffer, and then once for global | 1928 // Do this once for each buffer, and then once for global |
1927 // mappings/abbreviations with bp == NULL | 1929 // mappings/abbreviations with bp == NULL |
1928 for (bp = firstbuf; ; bp = bp->b_next) | 1930 for (bp = firstbuf; ; bp = bp->b_next) |
1929 { | 1931 { |
1976 } | 1978 } |
1977 } | 1979 } |
1978 if (bp == NULL) | 1980 if (bp == NULL) |
1979 break; | 1981 break; |
1980 } | 1982 } |
1983 ESTACK_CHECK_NOW | |
1981 estack_pop(); | 1984 estack_pop(); |
1982 } | 1985 } |
1983 | 1986 |
1984 #if defined(FEAT_EVAL) || defined(PROTO) | 1987 #if defined(FEAT_EVAL) || defined(PROTO) |
1985 /* | 1988 /* |