summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <bram@vim.org>2015-08-11 19:14:00 +0200
committerBram Moolenaar <bram@vim.org>2015-08-11 19:14:00 +0200
commitcb12574038c6206438cf0c7457e18cdbc915d951 (patch)
treeece4516b7bf07e0f68b247185fcfb7289b0ae009
parent32d8337918a7f550acdd4381640a7fb73ba6a041 (diff)
downloadvim-cb12574038c6206438cf0c7457e18cdbc915d951.tar.gz
patch 7.4.822v7.4.822v7-4-822
Problem: More problems reported by coverity. Solution: Avoid the warnings. (Christian Brabandt)
-rw-r--r--src/eval.c6
-rw-r--r--src/ex_cmds.c3
-rw-r--r--src/ex_cmds2.c4
-rw-r--r--src/ex_getln.c2
-rw-r--r--src/fold.c4
-rw-r--r--src/gui.c4
-rw-r--r--src/gui_w16.c2
-rw-r--r--src/gui_w32.c6
-rw-r--r--src/if_cscope.c11
-rw-r--r--src/if_xcmdsrv.c17
-rw-r--r--src/move.c2
-rw-r--r--src/normal.c12
-rw-r--r--src/os_unix.c2
-rw-r--r--src/regexp.c4
-rw-r--r--src/syntax.c2
-rw-r--r--src/ui.c2
-rw-r--r--src/version.c2
-rw-r--r--src/window.c6
18 files changed, 46 insertions, 45 deletions
diff --git a/src/eval.c b/src/eval.c
index 9de27641..1b2d77e4 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -6736,7 +6736,7 @@ list_join_inner(gap, l, sep, echo_style, copyID, join_gap)
len = (int)STRLEN(s);
sumlen += len;
- ga_grow(join_gap, 1);
+ (void)ga_grow(join_gap, 1);
p = ((join_T *)join_gap->ga_data) + (join_gap->ga_len++);
if (tofree != NULL || s != numbuf)
{
@@ -19590,7 +19590,7 @@ error:
goto error;
}
- ga_grow(&ga, cplen);
+ (void)ga_grow(&ga, cplen);
mch_memmove((char *)ga.ga_data + ga.ga_len, cpstr, (size_t)cplen);
ga.ga_len += cplen;
@@ -19610,7 +19610,7 @@ error:
}
/* add a terminating NUL */
- ga_grow(&ga, 1);
+ (void)ga_grow(&ga, 1);
ga_append(&ga, NUL);
rettv->vval.v_string = ga.ga_data;
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 637c8a07..4650a4e8 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -6856,7 +6856,8 @@ helptags_one(dir, ext, tagfname, add_help_tags)
/*
* Sort the tags.
*/
- sort_strings((char_u **)ga.ga_data, ga.ga_len);
+ if (ga.ga_data != NULL)
+ sort_strings((char_u **)ga.ga_data, ga.ga_len);
/*
* Check for duplicates.
diff --git a/src/ex_cmds2.c b/src/ex_cmds2.c
index 2763b693..eefd5d23 100644
--- a/src/ex_cmds2.c
+++ b/src/ex_cmds2.c
@@ -3051,7 +3051,7 @@ fopen_noinh_readbin(filename)
{
int fdflags = fcntl(fd_tmp, F_GETFD);
if (fdflags >= 0 && (fdflags & FD_CLOEXEC) == 0)
- fcntl(fd_tmp, F_SETFD, fdflags | FD_CLOEXEC);
+ (void)fcntl(fd_tmp, F_SETFD, fdflags | FD_CLOEXEC);
}
# endif
@@ -3841,7 +3841,7 @@ script_line_start()
{
/* Grow the array before starting the timer, so that the time spent
* here isn't counted. */
- ga_grow(&si->sn_prl_ga, (int)(sourcing_lnum - si->sn_prl_ga.ga_len));
+ (void)ga_grow(&si->sn_prl_ga, (int)(sourcing_lnum - si->sn_prl_ga.ga_len));
si->sn_prl_idx = sourcing_lnum - 1;
while (si->sn_prl_ga.ga_len <= si->sn_prl_idx
&& si->sn_prl_ga.ga_len < si->sn_prl_ga.ga_maxlen)
diff --git a/src/ex_getln.c b/src/ex_getln.c
index d7700c8c..5d7ea200 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -2312,7 +2312,7 @@ getexmodeline(promptc, cookie, indent)
add_indent:
while (get_indent_str(p, 8, FALSE) < indent)
{
- ga_grow(&line_ga, 2); /* one more for the NUL */
+ (void)ga_grow(&line_ga, 2); /* one more for the NUL */
p = (char_u *)line_ga.ga_data;
s = skipwhite(p);
mch_memmove(s + 1, s, line_ga.ga_len - (s - p) + 1);
diff --git a/src/fold.c b/src/fold.c
index 21e455bb..b0748578 100644
--- a/src/fold.c
+++ b/src/fold.c
@@ -2446,7 +2446,7 @@ foldUpdateIEMSRecurse(gap, level, startlnum, flp, getlevel, bot, topflags)
if (getlevel == foldlevelMarker && flp->start <= flp->lvl - level
&& flp->lvl > 0)
{
- foldFind(gap, startlnum - 1, &fp);
+ (void)foldFind(gap, startlnum - 1, &fp);
if (fp >= ((fold_T *)gap->ga_data) + gap->ga_len
|| fp->fd_top >= startlnum)
fp = NULL;
@@ -2508,7 +2508,7 @@ foldUpdateIEMSRecurse(gap, level, startlnum, flp, getlevel, bot, topflags)
}
if (lvl < level + i)
{
- foldFind(&fp->fd_nested, flp->lnum - fp->fd_top, &fp2);
+ (void)foldFind(&fp->fd_nested, flp->lnum - fp->fd_top, &fp2);
if (fp2 != NULL)
bot = fp2->fd_top + fp2->fd_len - 1 + fp->fd_top;
}
diff --git a/src/gui.c b/src/gui.c
index 5516d960..fc2981c6 100644
--- a/src/gui.c
+++ b/src/gui.c
@@ -1575,7 +1575,7 @@ gui_set_shellsize(mustset, fit_to_display, direction)
base_height = gui_get_base_height();
if (fit_to_display)
/* Remember the original window position. */
- gui_mch_get_winpos(&x, &y);
+ (void)gui_mch_get_winpos(&x, &y);
#ifdef USE_SUN_WORKSHOP
if (!mustset && usingSunWorkShop
@@ -5366,7 +5366,7 @@ gui_do_findrepl(flags, find_text, repl_text, down)
{
/* Search for the next match. */
i = msg_scroll;
- do_search(NULL, down ? '/' : '?', ga.ga_data, 1L,
+ (void)do_search(NULL, down ? '/' : '?', ga.ga_data, 1L,
SEARCH_MSG + SEARCH_MARK, NULL);
msg_scroll = i; /* don't let an error message set msg_scroll */
}
diff --git a/src/gui_w16.c b/src/gui_w16.c
index b8d1e0e5..a0a39967 100644
--- a/src/gui_w16.c
+++ b/src/gui_w16.c
@@ -282,7 +282,7 @@ _WndProc(
result = MyWindowProc(hwnd, uMsg, wParam, lParam);
if (result == HTCLIENT)
{
- gui_mch_get_winpos(&x, &y);
+ (void)gui_mch_get_winpos(&x, &y);
xPos -= x;
if (xPos < 48) /*<VN> TODO should use system metric?*/
diff --git a/src/gui_w32.c b/src/gui_w32.c
index 4fbf70ed..bf8f1229 100644
--- a/src/gui_w32.c
+++ b/src/gui_w32.c
@@ -17,7 +17,7 @@
* scrollbars, etc.
*
* Note: Clipboard stuff, for cutting and pasting text to other windows, is in
- * os_win32.c. (It can also be done from the terminal version).
+ * winclip.c. (It can also be done from the terminal version).
*
* TODO: Some of the function signatures ought to be updated for Win64;
* e.g., replace LONG with LONG_PTR, etc.
@@ -76,7 +76,7 @@ gui_mch_set_rendering_options(char_u *s)
char_u name[128];
char_u value[128];
- copy_option_part(&p, item, sizeof(item), ",");
+ copy_option_part(&p, item, sizeof(item), ",");
if (p == NULL)
break;
q = &item[0];
@@ -1227,7 +1227,7 @@ _WndProc(
return result;
}
#endif
- gui_mch_get_winpos(&x, &y);
+ (void)gui_mch_get_winpos(&x, &y);
xPos -= x;
if (xPos < 48) /* <VN> TODO should use system metric? */
diff --git a/src/if_cscope.c b/src/if_cscope.c
index 2b4ba081..4c3e2bd3 100644
--- a/src/if_cscope.c
+++ b/src/if_cscope.c
@@ -1076,8 +1076,8 @@ err_closing:
/*
* PRIVATE: cs_find
*
- * query cscope using command line interface. parse the output and use tselect
- * to allow choices. like Nvi, creates a pipe to send to/from query/cscope.
+ * Query cscope using command line interface. Parse the output and use tselect
+ * to allow choices. Like Nvi, creates a pipe to send to/from query/cscope.
*
* returns TRUE if we jump to a tag or abort, FALSE if not.
*/
@@ -1214,7 +1214,10 @@ cs_find_common(opt, pat, forceit, verbose, use_ll, cmdline)
nummatches = (int *)alloc(sizeof(int)*csinfo_size);
if (nummatches == NULL)
+ {
+ vim_free(cmd);
return FALSE;
+ }
/* Send query to all open connections, then count the total number
* of matches so we can alloc all in one swell foop. */
@@ -1289,7 +1292,7 @@ cs_find_common(opt, pat, forceit, verbose, use_ll, cmdline)
# ifdef FEAT_WINDOWS
if (postponed_split != 0)
{
- win_split(postponed_split > 0 ? postponed_split : 0,
+ (void)win_split(postponed_split > 0 ? postponed_split : 0,
postponed_split_flags);
RESET_BINDING(curwin);
postponed_split = 0;
@@ -2085,6 +2088,8 @@ cs_print_tags_priv(matches, cntxts, num_matches)
strcpy(tbuf, matches[0]);
ptag = strtok(tbuf, "\t");
+ if (ptag == NULL)
+ return;
newsize = (int)(strlen(cstag_msg) + strlen(ptag));
buf = (char *)alloc(newsize);
diff --git a/src/if_xcmdsrv.c b/src/if_xcmdsrv.c
index 44526d70..d8c64ad4 100644
--- a/src/if_xcmdsrv.c
+++ b/src/if_xcmdsrv.c
@@ -1265,12 +1265,12 @@ serverEventProc(dpy, eventPtr)
/* Initialize the result property. */
ga_init2(&reply, 1, 100);
#ifdef FEAT_MBYTE
- ga_grow(&reply, 50 + STRLEN(p_enc));
+ (void)ga_grow(&reply, 50 + STRLEN(p_enc));
sprintf(reply.ga_data, "%cr%c-E %s%c-s %s%c-r ",
0, 0, p_enc, 0, serial, 0);
reply.ga_len = 14 + STRLEN(p_enc) + STRLEN(serial);
#else
- ga_grow(&reply, 50);
+ (void)ga_grow(&reply, 50);
sprintf(reply.ga_data, "%cr%c-s %s%c-r ",
0, 0, serial, 0);
reply.ga_len = 10 + STRLEN(serial);
@@ -1351,15 +1351,10 @@ serverEventProc(dpy, eventPtr)
continue;
pcPtr->code = code;
- if (res != NULL)
- {
- res = serverConvert(enc, res, &tofree);
- if (tofree == NULL)
- res = vim_strsave(res);
- pcPtr->result = res;
- }
- else
- pcPtr->result = vim_strsave((char_u *)"");
+ res = serverConvert(enc, res, &tofree);
+ if (tofree == NULL)
+ res = vim_strsave(res);
+ pcPtr->result = res;
break;
}
}
diff --git a/src/move.c b/src/move.c
index 02694123..0242fefa 100644
--- a/src/move.c
+++ b/src/move.c
@@ -1512,7 +1512,7 @@ scrolldown_clamp()
--curwin->w_topline;
#endif
#ifdef FEAT_FOLDING
- hasFolding(curwin->w_topline, &curwin->w_topline, NULL);
+ (void)hasFolding(curwin->w_topline, &curwin->w_topline, NULL);
#endif
--curwin->w_botline; /* approximate w_botline */
curwin->w_valid &= ~(VALID_WROW|VALID_CROW|VALID_BOTLINE);
diff --git a/src/normal.c b/src/normal.c
index a46cc9d6..ae7b83ad 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -2865,10 +2865,8 @@ do_mouse(oap, c, dir, count, fixindent)
end_visual.col = leftcol;
else
end_visual.col = rightcol;
- if (curwin->w_cursor.lnum <
+ if (curwin->w_cursor.lnum >=
(start_visual.lnum + end_visual.lnum) / 2)
- end_visual.lnum = end_visual.lnum;
- else
end_visual.lnum = start_visual.lnum;
/* move VIsual to the right column */
@@ -3807,8 +3805,8 @@ clear_showcmd()
}
# ifdef FEAT_FOLDING
/* Include closed folds as a whole. */
- hasFolding(top, &top, NULL);
- hasFolding(bot, NULL, &bot);
+ (void)hasFolding(top, &top, NULL);
+ (void)hasFolding(bot, NULL, &bot);
# endif
lines = bot - top + 1;
@@ -5954,7 +5952,7 @@ nv_scroll(cap)
lnum = curwin->w_topline;
while (n-- > 0 && lnum < curwin->w_botline - 1)
{
- hasFolding(lnum, NULL, &lnum);
+ (void)hasFolding(lnum, NULL, &lnum);
++lnum;
}
n = lnum - curwin->w_topline;
@@ -6254,7 +6252,7 @@ nv_gotofile(cap)
{
/* do autowrite if necessary */
if (curbufIsChanged() && curbuf->b_nwindows <= 1 && !P_HID(curbuf))
- autowrite(curbuf, FALSE);
+ (void)autowrite(curbuf, FALSE);
setpcmark();
(void)do_ecmd(0, ptr, NULL, NULL, ECMD_LAST,
P_HID(curbuf) ? ECMD_HIDE : 0, curwin);
diff --git a/src/os_unix.c b/src/os_unix.c
index f53faa35..2439c5e2 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -7001,7 +7001,7 @@ do_xterm_trace()
/* Rely on the same mouse code for the duration of this */
mouse_code = find_termcode(mouse_name);
prev_row = mouse_row;
- prev_row = mouse_col;
+ prev_col = mouse_col;
xterm_trace = 2;
/* Find the offset of the chars, there might be a scrollbar on the
diff --git a/src/regexp.c b/src/regexp.c
index 45b8071a..37d42c71 100644
--- a/src/regexp.c
+++ b/src/regexp.c
@@ -3824,14 +3824,14 @@ bt_regexec_both(line, col, tm)
/* Use an item size of 1 byte, since we push different things
* onto the regstack. */
ga_init2(&regstack, 1, REGSTACK_INITIAL);
- ga_grow(&regstack, REGSTACK_INITIAL);
+ (void)ga_grow(&regstack, REGSTACK_INITIAL);
regstack.ga_growsize = REGSTACK_INITIAL * 8;
}
if (backpos.ga_data == NULL)
{
ga_init2(&backpos, sizeof(backpos_T), BACKPOS_INITIAL);
- ga_grow(&backpos, BACKPOS_INITIAL);
+ (void)ga_grow(&backpos, BACKPOS_INITIAL);
backpos.ga_growsize = BACKPOS_INITIAL * 8;
}
diff --git a/src/syntax.c b/src/syntax.c
index 000d5984..e4ae0b1a 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -6670,7 +6670,7 @@ syntime_report()
spp = &(SYN_ITEMS(curwin->w_s)[idx]);
if (spp->sp_time.count > 0)
{
- ga_grow(&ga, 1);
+ (void)ga_grow(&ga, 1);
p = ((time_entry_T *)ga.ga_data) + ga.ga_len;
p->total = spp->sp_time.total;
profile_add(&total_total, &spp->sp_time.total);
diff --git a/src/ui.c b/src/ui.c
index 10ae7317..7bbf2838 100644
--- a/src/ui.c
+++ b/src/ui.c
@@ -2903,7 +2903,7 @@ retnomove:
break;
first = FALSE;
#ifdef FEAT_FOLDING
- hasFolding(curwin->w_topline, &curwin->w_topline, NULL);
+ (void)hasFolding(curwin->w_topline, &curwin->w_topline, NULL);
#endif
#ifdef FEAT_DIFF
if (curwin->w_topfill < diff_check(curwin, curwin->w_topline))
diff --git a/src/version.c b/src/version.c
index 09eceabd..62eb4ed4 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 822,
+/**/
821,
/**/
820,
diff --git a/src/window.c b/src/window.c
index ec286c7f..60d9ceb4 100644
--- a/src/window.c
+++ b/src/window.c
@@ -141,7 +141,7 @@ do_window(nchar, Prenum, xchar)
#ifdef FEAT_GUI
need_mouse_correct = TRUE;
#endif
- win_split((int)Prenum, 0);
+ (void)win_split((int)Prenum, 0);
break;
#ifdef FEAT_VERTSPLIT
@@ -159,7 +159,7 @@ do_window(nchar, Prenum, xchar)
# ifdef FEAT_GUI
need_mouse_correct = TRUE;
# endif
- win_split((int)Prenum, WSP_VERT);
+ (void)win_split((int)Prenum, WSP_VERT);
break;
#endif
@@ -2586,7 +2586,7 @@ win_close_othertab(win, free_buf, tp)
return;
/* When closing the last window in a tab page remove the tab page. */
- if (tp == NULL ? firstwin == lastwin : tp->tp_firstwin == tp->tp_lastwin)
+ if (tp->tp_firstwin == tp->tp_lastwin)
{
if (tp == first_tabpage)
first_tabpage = tp->tp_next;