From: Bram Moolenaar Date: Fri, 22 Feb 2019 18:14:54 +0000 (+0100) Subject: patch 8.1.0975: using STRNCPY() wrongly. Warning for uninitialized variable X-Git-Tag: v8.1.0975 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c666388367282c3c7d1d7af24883cfa0d40b046e;p=vim patch 8.1.0975: using STRNCPY() wrongly. Warning for uninitialized variable Problem: Using STRNCPY() wrongly. Warning for uninitialized variable. Solution: Use mch_memmove(). Initialize variable. (Yasuhiro Matsumoto, closes #3979) --- diff --git a/src/screen.c b/src/screen.c index 4973b510d..aade363ea 100644 --- a/src/screen.c +++ b/src/screen.c @@ -2547,10 +2547,10 @@ text_to_screenline(win_T *wp, char_u *text, int col) { #ifdef FEAT_RIGHTLEFT if (wp->w_p_rl) - STRNCPY(current_ScreenLine, text, len); + mch_memmove(current_ScreenLine, text, len); else #endif - STRNCPY(current_ScreenLine + col, text, len); + mch_memmove(current_ScreenLine + col, text, len); col += len; } } @@ -3396,7 +3396,7 @@ win_line( { if (lnum == curwin->w_cursor.lnum) getvcol(curwin, &(curwin->w_cursor), - (colnr_T *)&fromcol, NULL, NULL); + (colnr_T *)&fromcol, NULL, NULL); else fromcol = 0; if (lnum == curwin->w_cursor.lnum + search_match_lines) diff --git a/src/textprop.c b/src/textprop.c index 637ee7f39..674faebe2 100644 --- a/src/textprop.c +++ b/src/textprop.c @@ -17,6 +17,7 @@ * Text properties have a type, which can be used to specify highlighting. * * TODO: + * - When using 'cursorline' attributes should be merged. (#3912) * - Adjust text property column and length when text is inserted/deleted. * -> a :substitute with a multi-line match * -> search for changed_bytes() from misc1.c @@ -27,7 +28,10 @@ * the index, like DB_MARKED? * - Also test line2byte() with many lines, so that ml_updatechunk() is taken * into account. - * - add mechanism to keep track of changed lines. + * - Add mechanism to keep track of changed lines, so that plugin can update + * text properties in these. + * - Perhaps have a window-local option to disable highlighting from text + * properties? */ #include "vim.h" @@ -158,7 +162,7 @@ f_prop_add(typval_T *argvars, typval_T *rettv UNUSED) char_u *newtext; int proplen; size_t textlen; - char_u *props; + char_u *props = NULL; char_u *newprops; textprop_T tmp_prop; int i; diff --git a/src/version.c b/src/version.c index cd2554a97..0980420ca 100644 --- a/src/version.c +++ b/src/version.c @@ -779,6 +779,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 975, /**/ 974, /**/