summaryrefslogtreecommitdiff
path: root/data/vim/patches/8.1.0753
diff options
context:
space:
mode:
Diffstat (limited to 'data/vim/patches/8.1.0753')
-rw-r--r--data/vim/patches/8.1.0753548
1 files changed, 548 insertions, 0 deletions
diff --git a/data/vim/patches/8.1.0753 b/data/vim/patches/8.1.0753
new file mode 100644
index 000000000..fb1095e5f
--- /dev/null
+++ b/data/vim/patches/8.1.0753
@@ -0,0 +1,548 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 8.1.0753
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 8.1.0753
+Problem: printf format not checked for semsg().
+Solution: Add GNUC attribute and fix reported problems. (Dominique Pelle,
+ closes #3805)
+Files: src/buffer.c, src/diff.c, src/eval.c, src/evalfunc.c,
+ src/ex_docmd.c, src/if_cscope.c, src/netbeans.c, src/proto.h,
+ src/proto/message.pro, src/quickfix.c, src/regexp_nfa.c,
+ src/sign.c, src/spellfile.c, src/window.c, src/gui_x11.c
+
+
+*** ../vim-8.1.0752/src/buffer.c 2019-01-13 23:38:33.375773418 +0100
+--- src/buffer.c 2019-01-15 20:12:27.203089550 +0100
+***************
+*** 1407,1413 ****
+ else
+ #endif
+ {
+! semsg(_("E89: No write since last change for buffer %ld (add ! to override)"),
+ buf->b_fnum);
+ return FAIL;
+ }
+--- 1407,1413 ----
+ else
+ #endif
+ {
+! semsg(_("E89: No write since last change for buffer %d (add ! to override)"),
+ buf->b_fnum);
+ return FAIL;
+ }
+***************
+*** 2283,2289 ****
+ if ((options & GETF_ALT) && n == 0)
+ emsg(_(e_noalt));
+ else
+! semsg(_("E92: Buffer %ld not found"), n);
+ return FAIL;
+ }
+
+--- 2283,2289 ----
+ if ((options & GETF_ALT) && n == 0)
+ emsg(_(e_noalt));
+ else
+! semsg(_("E92: Buffer %d not found"), n);
+ return FAIL;
+ }
+
+*** ../vim-8.1.0752/src/diff.c 2019-01-13 23:38:33.379773390 +0100
+--- src/diff.c 2019-01-15 20:12:27.203089550 +0100
+***************
+*** 173,179 ****
+ return;
+ }
+
+! semsg(_("E96: Cannot diff more than %ld buffers"), DB_COUNT);
+ }
+
+ /*
+--- 173,179 ----
+ return;
+ }
+
+! semsg(_("E96: Cannot diff more than %d buffers"), DB_COUNT);
+ }
+
+ /*
+*** ../vim-8.1.0752/src/eval.c 2019-01-14 22:53:26.750381258 +0100
+--- src/eval.c 2019-01-15 20:12:27.207089517 +0100
+***************
+*** 268,274 ****
+
+ /*
+ * Sort the function table by function name.
+! * The sorting of the table above is ASCII dependant.
+ * On machines using EBCDIC we have to sort it.
+ */
+ static void
+--- 268,274 ----
+
+ /*
+ * Sort the function table by function name.
+! * The sorting of the table above is ASCII dependent.
+ * On machines using EBCDIC we have to sort it.
+ */
+ static void
+*** ../vim-8.1.0752/src/evalfunc.c 2019-01-13 23:38:33.387773334 +0100
+--- src/evalfunc.c 2019-01-15 20:12:27.207089517 +0100
+***************
+*** 8256,8262 ****
+ return;
+ if (id >= 1 && id <= 3)
+ {
+! semsg(_("E798: ID is reserved for \":match\": %ld"), id);
+ return;
+ }
+
+--- 8256,8262 ----
+ return;
+ if (id >= 1 && id <= 3)
+ {
+! semsg(_("E798: ID is reserved for \":match\": %d"), id);
+ return;
+ }
+
+***************
+*** 8314,8320 ****
+ /* id == 3 is ok because matchaddpos() is supposed to substitute :3match */
+ if (id == 1 || id == 2)
+ {
+! semsg(_("E798: ID is reserved for \":match\": %ld"), id);
+ return;
+ }
+
+--- 8314,8320 ----
+ /* id == 3 is ok because matchaddpos() is supposed to substitute :3match */
+ if (id == 1 || id == 2)
+ {
+! semsg(_("E798: ID is reserved for \":match\": %d"), id);
+ return;
+ }
+
+*** ../vim-8.1.0752/src/ex_docmd.c 2019-01-15 20:07:44.693265335 +0100
+--- src/ex_docmd.c 2019-01-15 20:12:31.131059874 +0100
+***************
+*** 1347,1353 ****
+ }
+ else if (p != NULL)
+ {
+! semsg(p);
+ vim_free(p);
+ }
+ vim_free(sourcing_name);
+--- 1347,1353 ----
+ }
+ else if (p != NULL)
+ {
+! emsg(p);
+ vim_free(p);
+ }
+ vim_free(sourcing_name);
+***************
+*** 5788,5795 ****
+ return FAIL;
+ }
+ #endif
+! semsg(NGETTEXT("E173: %ld more file to edit",
+! "E173: %ld more files to edit", n), n);
+ quitmore = 2; /* next try to quit is allowed */
+ }
+ return FAIL;
+--- 5788,5795 ----
+ return FAIL;
+ }
+ #endif
+! semsg(NGETTEXT("E173: %d more file to edit",
+! "E173: %d more files to edit", n), n);
+ quitmore = 2; /* next try to quit is allowed */
+ }
+ return FAIL;
+***************
+*** 6958,6964 ****
+ }
+ }
+
+! /* break if there no <item> is found */
+ if (start == NULL || end == NULL)
+ break;
+
+--- 6958,6964 ----
+ }
+ }
+
+! /* break if no <item> is found */
+ if (start == NULL || end == NULL)
+ break;
+
+***************
+*** 8022,8028 ****
+ /*
+ * Handle a file drop. The code is here because a drop is *nearly* like an
+ * :args command, but not quite (we have a list of exact filenames, so we
+! * don't want to (a) parse a command line, or (b) expand wildcards. So the
+ * code is very similar to :args and hence needs access to a lot of the static
+ * functions in this file.
+ *
+--- 8022,8028 ----
+ /*
+ * Handle a file drop. The code is here because a drop is *nearly* like an
+ * :args command, but not quite (we have a list of exact filenames, so we
+! * don't want to (a) parse a command line, or (b) expand wildcards). So the
+ * code is very similar to :args and hence needs access to a lot of the static
+ * functions in this file.
+ *
+*** ../vim-8.1.0752/src/if_cscope.c 2019-01-13 23:38:33.395773275 +0100
+--- src/if_cscope.c 2019-01-15 20:12:31.131059874 +0100
+***************
+*** 651,657 ****
+ cs_reading_emsg(
+ int idx) /* connection index */
+ {
+! semsg(_("E262: error reading cscope connection %ld"), idx);
+ }
+
+ #define CSREAD_BUFSIZE 2048
+--- 651,657 ----
+ cs_reading_emsg(
+ int idx) /* connection index */
+ {
+! semsg(_("E262: error reading cscope connection %d"), idx);
+ }
+
+ #define CSREAD_BUFSIZE 2048
+*** ../vim-8.1.0752/src/netbeans.c 2019-01-13 23:38:33.403773217 +0100
+--- src/netbeans.c 2019-01-15 20:12:31.135059844 +0100
+***************
+*** 1541,1547 ****
+ if (!buf->bufp->b_netbeans_file)
+ {
+ nbdebug(("E658: NetBeans connection lost for buffer %ld\n", buf->bufp->b_fnum));
+! semsg(_("E658: NetBeans connection lost for buffer %ld"),
+ buf->bufp->b_fnum);
+ }
+ else
+--- 1541,1547 ----
+ if (!buf->bufp->b_netbeans_file)
+ {
+ nbdebug(("E658: NetBeans connection lost for buffer %ld\n", buf->bufp->b_fnum));
+! semsg(_("E658: NetBeans connection lost for buffer %d"),
+ buf->bufp->b_fnum);
+ }
+ else
+*** ../vim-8.1.0752/src/proto.h 2019-01-13 23:38:33.407773189 +0100
+--- src/proto.h 2019-01-15 20:12:31.135059844 +0100
+***************
+*** 108,126 ****
+ # ifdef __BORLANDC__
+ _RTLENTRYF
+ # endif
+! smsg(const char *, ...);
+
+ int
+ # ifdef __BORLANDC__
+ _RTLENTRYF
+ # endif
+! smsg_attr(int, const char *, ...);
+
+ int
+ # ifdef __BORLANDC__
+ _RTLENTRYF
+ # endif
+! smsg_attr_keep(int, const char *, ...);
+
+ int
+ # ifdef __BORLANDC__
+--- 108,138 ----
+ # ifdef __BORLANDC__
+ _RTLENTRYF
+ # endif
+! smsg(const char *, ...)
+! #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+! __attribute__((format(printf, 1, 0)))
+! #endif
+! ;
+
+ int
+ # ifdef __BORLANDC__
+ _RTLENTRYF
+ # endif
+! smsg_attr(int, const char *, ...)
+! #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+! __attribute__((format(printf, 2, 3)))
+! #endif
+! ;
+
+ int
+ # ifdef __BORLANDC__
+ _RTLENTRYF
+ # endif
+! smsg_attr_keep(int, const char *, ...)
+! #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+! __attribute__((format(printf, 2, 3)))
+! #endif
+! ;
+
+ int
+ # ifdef __BORLANDC__
+*** ../vim-8.1.0752/src/proto/message.pro 2019-01-13 23:38:33.407773189 +0100
+--- src/proto/message.pro 2019-01-15 20:12:35.675025564 +0100
+***************
+*** 11,19 ****
+ void ignore_error_for_testing(char_u *error);
+ void do_perror(char *msg);
+ int emsg(char *s);
+! int semsg(const char *s, ...);
+ void iemsg(char *s);
+! void siemsg(const char *s, ...);
+ void internal_error(char *where);
+ void emsg_invreg(int name);
+ char_u *msg_trunc_attr(char_u *s, int force, int attr);
+--- 11,28 ----
+ void ignore_error_for_testing(char_u *error);
+ void do_perror(char *msg);
+ int emsg(char *s);
+!
+! int semsg(const char *s, ...)
+! #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+! __attribute__((format(printf, 1, 2)))
+! #endif
+! ;
+ void iemsg(char *s);
+! void siemsg(const char *s, ...)
+! #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+! __attribute__((format(printf, 1, 2)))
+! #endif
+! ;
+ void internal_error(char *where);
+ void emsg_invreg(int name);
+ char_u *msg_trunc_attr(char_u *s, int force, int attr);
+*** ../vim-8.1.0752/src/quickfix.c 2019-01-13 23:38:33.407773189 +0100
+--- src/quickfix.c 2019-01-15 20:12:35.675025564 +0100
+***************
+*** 6263,6269 ****
+ if (!did_bufnr_emsg)
+ {
+ did_bufnr_emsg = TRUE;
+! semsg(_("E92: Buffer %ld not found"), bufnum);
+ }
+ valid = FALSE;
+ bufnum = 0;
+--- 6263,6269 ----
+ if (!did_bufnr_emsg)
+ {
+ did_bufnr_emsg = TRUE;
+! semsg(_("E92: Buffer %d not found"), bufnum);
+ }
+ valid = FALSE;
+ bufnum = 0;
+*** ../vim-8.1.0752/src/regexp_nfa.c 2019-01-13 23:38:33.407773189 +0100
+--- src/regexp_nfa.c 2019-01-15 20:12:35.675025564 +0100
+***************
+*** 1307,1313 ****
+ rc_did_emsg = TRUE;
+ return FAIL;
+ }
+! siemsg("INTERNAL: Unknown character class char: %ld", c);
+ return FAIL;
+ }
+ #ifdef FEAT_MBYTE
+--- 1307,1313 ----
+ rc_did_emsg = TRUE;
+ return FAIL;
+ }
+! siemsg("INTERNAL: Unknown character class char: %d", c);
+ return FAIL;
+ }
+ #ifdef FEAT_MBYTE
+*** ../vim-8.1.0752/src/sign.c 2019-01-14 23:08:13.058543291 +0100
+--- src/sign.c 2019-01-15 20:12:35.675025564 +0100
+***************
+*** 162,168 ****
+ group = HI2SG(hi);
+ }
+
+! // Search for the next usuable sign identifier
+ while (!found)
+ {
+ if (group == NULL)
+--- 162,168 ----
+ group = HI2SG(hi);
+ }
+
+! // Search for the next usable sign identifier
+ while (!found)
+ {
+ if (group == NULL)
+***************
+*** 996,1002 ****
+
+ if ((lnum = buf_findsign(buf, sign_id, sign_group)) <= 0)
+ {
+! semsg(_("E157: Invalid sign ID: %ld"), sign_id);
+ return -1;
+ }
+
+--- 996,1002 ----
+
+ if ((lnum = buf_findsign(buf, sign_id, sign_group)) <= 0)
+ {
+! semsg(_("E157: Invalid sign ID: %d"), sign_id);
+ return -1;
+ }
+
+*** ../vim-8.1.0752/src/spellfile.c 2019-01-13 23:38:33.411773162 +0100
+--- src/spellfile.c 2019-01-15 20:12:35.675025564 +0100
+***************
+*** 6014,6020 ****
+ else if (vim_strchr(gettail(wfname), '_') != NULL)
+ emsg(_("E751: Output file name must not have region name"));
+ else if (incount > MAXREGIONS)
+! semsg(_("E754: Only up to %ld regions supported"), MAXREGIONS);
+ else
+ {
+ /* Check for overwriting before doing things that may take a lot of
+--- 6014,6020 ----
+ else if (vim_strchr(gettail(wfname), '_') != NULL)
+ emsg(_("E751: Output file name must not have region name"));
+ else if (incount > MAXREGIONS)
+! semsg(_("E754: Only up to %d regions supported"), MAXREGIONS);
+ else
+ {
+ /* Check for overwriting before doing things that may take a lot of
+***************
+*** 6274,6280 ****
+ break;
+ if (*spf == NUL)
+ {
+! semsg(_("E765: 'spellfile' does not have %ld entries"), idx);
+ vim_free(fnamebuf);
+ return;
+ }
+--- 6274,6280 ----
+ break;
+ if (*spf == NUL)
+ {
+! semsg(_("E765: 'spellfile' does not have %d entries"), idx);
+ vim_free(fnamebuf);
+ return;
+ }
+*** ../vim-8.1.0752/src/window.c 2019-01-13 23:38:33.415773131 +0100
+--- src/window.c 2019-01-15 20:12:35.679025534 +0100
+***************
+*** 6782,6788 ****
+ return -1;
+ if (id < -1 || id == 0)
+ {
+! semsg(_("E799: Invalid ID: %ld (must be greater than or equal to 1)"), id);
+ return -1;
+ }
+ if (id != -1)
+--- 6782,6788 ----
+ return -1;
+ if (id < -1 || id == 0)
+ {
+! semsg(_("E799: Invalid ID: %d (must be greater than or equal to 1)"), id);
+ return -1;
+ }
+ if (id != -1)
+***************
+*** 6792,6798 ****
+ {
+ if (cur->id == id)
+ {
+! semsg(_("E801: ID already taken: %ld"), id);
+ return -1;
+ }
+ cur = cur->next;
+--- 6792,6798 ----
+ {
+ if (cur->id == id)
+ {
+! semsg(_("E801: ID already taken: %d"), id);
+ return -1;
+ }
+ cur = cur->next;
+***************
+*** 6969,6975 ****
+ if (id < 1)
+ {
+ if (perr == TRUE)
+! semsg(_("E802: Invalid ID: %ld (must be greater than or equal to 1)"),
+ id);
+ return -1;
+ }
+--- 6969,6975 ----
+ if (id < 1)
+ {
+ if (perr == TRUE)
+! semsg(_("E802: Invalid ID: %d (must be greater than or equal to 1)"),
+ id);
+ return -1;
+ }
+***************
+*** 6981,6987 ****
+ if (cur == NULL)
+ {
+ if (perr == TRUE)
+! semsg(_("E803: ID not found: %ld"), id);
+ return -1;
+ }
+ if (cur == prev)
+--- 6981,6987 ----
+ if (cur == NULL)
+ {
+ if (perr == TRUE)
+! semsg(_("E803: ID not found: %d"), id);
+ return -1;
+ }
+ if (cur == prev)
+*** ../vim-8.1.0752/src/gui_x11.c 2019-01-13 23:38:33.395773275 +0100
+--- src/gui_x11.c 2019-01-15 20:16:45.801159811 +0100
+***************
+*** 2210,2218 ****
+ semsg(_("E253: Fontset name: %s"), base_name);
+ semsg(_("Font0: %s"), font_name[min_font_idx]);
+ semsg(_("Font1: %s"), font_name[i]);
+! semsg(_("Font%ld width is not twice that of font0"), i);
+! semsg(_("Font0 width: %ld"), xfs[min_font_idx]->max_bounds.width);
+! semsg(_("Font1 width: %ld"), xfs[i]->max_bounds.width);
+ return FAIL;
+ }
+ }
+--- 2210,2219 ----
+ semsg(_("E253: Fontset name: %s"), base_name);
+ semsg(_("Font0: %s"), font_name[min_font_idx]);
+ semsg(_("Font1: %s"), font_name[i]);
+! semsg(_("Font%d width is not twice that of font0"), i);
+! semsg(_("Font0 width: %d"),
+! (int)xfs[min_font_idx]->max_bounds.width);
+! semsg(_("Font%d width: %d"), i, (int)xfs[i]->max_bounds.width);
+ return FAIL;
+ }
+ }
+*** ../vim-8.1.0752/src/version.c 2019-01-15 20:07:44.697265303 +0100
+--- src/version.c 2019-01-15 20:11:25.723555755 +0100
+***************
+*** 797,798 ****
+--- 797,800 ----
+ { /* Add new patch number below this line */
++ /**/
++ 753,
+ /**/
+
+--
+hundred-and-one symptoms of being an internet addict:
+212. Your Internet group window has more icons than your Accessories window.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ an exciting new programming language -- http://www.Zimbu.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///