]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.1.0372: Calling CLEAR_FIELD() on the same struct twice v9.1.0372
authorzeertzjq <zeertzjq@outlook.com>
Thu, 25 Apr 2024 19:34:10 +0000 (21:34 +0200)
committerChristian Brabandt <cb@256bit.org>
Thu, 25 Apr 2024 19:34:10 +0000 (21:34 +0200)
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>
src/scriptfile.c
src/version.c

index 54af7597e5f72059d18dafffd60bff1b375164a0..d5ec7cfddd94354194489e7722414e1c1fd56400 100644 (file)
@@ -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 *sp, exarg_T *eap)
     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 *sp, exarg_T *eap)
     }
     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);
index 5a2d397b4e5a7181d817dd31f6a84f6d35727f89..124fb664c3d0f22e016e7548d7dac6318b9f1d12 100644 (file)
@@ -704,6 +704,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    372,
 /**/
     371,
 /**/