Mercurial > vim
changeset 35046:323962c19623 v9.1.0372
patch 9.1.0372: Calling CLEAR_FIELD() on the same struct twice
Commit: https://github.com/vim/vim/commit/f68517c1671dfedcc1555da50bc0b3de6d2842f6
Author: zeertzjq <zeertzjq@outlook.com>
Date: Thu Apr 25 21:34:10 2024 +0200
patch 9.1.0372: Calling CLEAR_FIELD() on the same struct twice
Problem: Calling CLEAR_FIELD() on the same struct twice.
Solution: Remove the second CLEAR_FIELD(). Move the assignment of
cookie.sourceing_lnum (zeertzjq).
closes: #14627
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 25 Apr 2024 21:45:04 +0200 |
parents | ddcdd52e583c |
children | 6f7c02ee79f5 |
files | src/scriptfile.c src/version.c |
diffstat | 2 files changed, 5 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/src/scriptfile.c +++ b/src/scriptfile.c @@ -1273,7 +1273,7 @@ cmd_source(char_u *fname, exarg_T *eap) emsg(_(e_argument_required)); else // source ex commands from the current buffer - do_source_ext(NULL, FALSE, FALSE, NULL, eap, clearvars); + do_source_ext(NULL, FALSE, DOSO_NONE, NULL, eap, clearvars); } else if (eap != NULL && eap->forceit) // ":source!": read Normal mode commands @@ -1424,8 +1424,6 @@ do_source_buffer_init(source_cookie_T *s char_u *line = NULL; char_u *fname; - CLEAR_FIELD(*sp); - if (curbuf == NULL) return NULL; @@ -1453,6 +1451,8 @@ do_source_buffer_init(source_cookie_T *s } sp->buf_lnum = 0; sp->source_from_buf = TRUE; + // When sourcing a range of lines from a buffer, use buffer line number. + sp->sourcing_lnum = eap->line1 - 1; return fname; @@ -1641,13 +1641,6 @@ do_source_ext( cookie.fileformat = EOL_UNKNOWN; #endif - if (fname == NULL) - // When sourcing a range of lines from a buffer, use the buffer line - // number. - cookie.sourcing_lnum = eap->line1 - 1; - else - cookie.sourcing_lnum = 0; - #ifdef FEAT_EVAL // Check if this script has a breakpoint. cookie.breakpoint = dbg_find_breakpoint(TRUE, fname_exp, (linenr_T)0);