]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.1.0267: File name entered in GUI dialog is ignored v9.1.0267
authorzeertzjq <zeertzjq@outlook.com>
Fri, 5 Apr 2024 18:02:55 +0000 (20:02 +0200)
committerChristian Brabandt <cb@256bit.org>
Fri, 5 Apr 2024 18:02:55 +0000 (20:02 +0200)
Problem:  File name entered in GUI dialog is ignored (after v9.1.0265)
Solution: Only set file name to "Untitled" if GUI dialog didn't set it.
          (zeertzjq)

closes: #14417

Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
src/ex_cmds2.c
src/version.c

index a75bfc11c0c96958dc8ba476072f72509fde3d93..ce30b8d397c00f9eb7f76603afdf80a6daea3301 100644 (file)
@@ -164,7 +164,6 @@ dialog_changed(
     int                ret;
     buf_T      *buf2;
     exarg_T    ea;
-    int                empty_buf = buf->b_fname == NULL ? TRUE : FALSE;
 
     dialog_msg(buff, _("Save changes to \"%s\"?"), buf->b_fname);
     if (checkall)
@@ -178,11 +177,14 @@ dialog_changed(
 
     if (ret == VIM_YES)
     {
+       int     empty_bufname;
+
 #ifdef FEAT_BROWSE
        // May get file name, when there is none
        browse_save_fname(buf);
 #endif
-       if (empty_buf)
+       empty_bufname = buf->b_fname == NULL ? TRUE : FALSE;
+       if (empty_bufname)
            buf_set_name(buf->b_fnum, (char_u *)"Untitled");
 
        if (check_overwrite(&ea, buf, buf->b_fname, buf->b_ffname, FALSE) == OK)
@@ -193,14 +195,11 @@ dialog_changed(
        }
 
        // restore to empty when write failed
-       if (empty_buf)
+       if (empty_bufname)
        {
-           vim_free(buf->b_fname);
-           buf->b_fname = NULL;
-           vim_free(buf->b_ffname);
-           buf->b_ffname = NULL;
-           vim_free(buf->b_sfname);
-           buf->b_sfname = NULL;
+           VIM_CLEAR(buf->b_fname);
+           VIM_CLEAR(buf->b_ffname);
+           VIM_CLEAR(buf->b_sfname);
            unchanged(buf, TRUE, FALSE);
        }
     }
index f1792f7335fc2513e78e8b0d2ae1a1e7ffb3a652..5534b9b30871a1f97e3a98339acdabee3adc8a02 100644 (file)
@@ -704,6 +704,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    267,
 /**/
     266,
 /**/