]> granicus.if.org Git - vim/commitdiff
patch 7.4.822 v7.4.822
authorBram Moolenaar <Bram@vim.org>
Tue, 11 Aug 2015 17:14:00 +0000 (19:14 +0200)
committerBram Moolenaar <Bram@vim.org>
Tue, 11 Aug 2015 17:14:00 +0000 (19:14 +0200)
Problem:    More problems reported by coverity.
Solution:   Avoid the warnings. (Christian Brabandt)

18 files changed:
src/eval.c
src/ex_cmds.c
src/ex_cmds2.c
src/ex_getln.c
src/fold.c
src/gui.c
src/gui_w16.c
src/gui_w32.c
src/if_cscope.c
src/if_xcmdsrv.c
src/move.c
src/normal.c
src/os_unix.c
src/regexp.c
src/syntax.c
src/ui.c
src/version.c
src/window.c

index 9de2764154a1594974c0486de0ef749ef63b530b..1b2d77e41bba0e0ecc43a3d985cee56656a1114d 100644 (file)
@@ -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;
index 637c8a07a272f7b511f80b29ee34253a63bb3b78..4650a4e8c9708f591796afea53f08d2b5f17523d 100644 (file)
@@ -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.
index 2763b69354b155b5c0bbee7a8db17dab6fe801d2..eefd5d23771518ae3f931806e045cb11b441f19b 100644 (file)
@@ -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)
index d7700c8c8774ec2cf9ff57cde17f3765ddc7ca45..5d7ea2009fedf1e278c130b09609e2b8f9ef18af 100644 (file)
@@ -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);
index 21e455bb191bfc2269e39797ad67321cab01b7b5..b07485784f7cf84ac9766740418fd1de0d11aa20 100644 (file)
@@ -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;
            }
index 5516d96075fbc43a038ab9c91bc075c8f4161089..fc2981c6ca5808db74f651e27762bb7ddb313b83 100644 (file)
--- 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 */
     }
index b8d1e0e51308a5bd06895ff4126a41791b6b3c63..a0a3996786c83030d772cb109aafcb988eb5a205 100644 (file)
@@ -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?*/
index 4fbf70edccb25083562215d3951464499436f57c..bf8f12299cb4e9d84d0eca4a0e278bf5916f6059 100644 (file)
@@ -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? */
index 2b4ba08132ab0ff239c4f12ed8c167a4de8578c1..4c3e2bd31694c8e1a9ff61fbdb62dd73f6582630 100644 (file)
@@ -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);
index 44526d70bffed3fb51512daa009f9d3afd693701..d8c64ad4b03e160ff64f721b0267eaa42dfeae36 100644 (file)
@@ -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;
            }
        }
index 02694123887ac89a11955e48323209e1b5a247bc..0242fefa6fe82c17602b8755fe943cdc18697ecb 100644 (file)
@@ -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);
index a46cc9d641a1ba73183c93d80c1df45ddc53e43b..ae7b83ad2278f80c30889c6bdc45f0ddc842efa1 100644 (file)
@@ -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);
index f53faa35a01a777ff2bb8ff6c243fa2b29c05db5..2439c5e252ef02b99d173d8363b5b8dcfa2b25db 100644 (file)
@@ -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
index 45b8071abec51ff01f014e013229aebf11eb3718..37d42c71a272faae55c71707059fadb0623458a5 100644 (file)
@@ -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;
     }
 
index 000d5984ccd813e2aa4c85b3e9a3e5098c33cb02..e4ae0b1ae7bcbc0b47faebd2e49fab5cf429b6d6 100644 (file)
@@ -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);
index 10ae731772126389f31380a98b7f00c052d54dc0..7bbf2838e2a70906e7a4faafaa8e1f2c03963a0d 100644 (file)
--- 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))
index 09eceabdc998ea239510f91542121d1612d7bd5e..62eb4ed46f72b84da87b63b76de3f66257532cfa 100644 (file)
@@ -741,6 +741,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    822,
 /**/
     821,
 /**/
index ec286c7fda57293bdb369c67cb4913db482d67eb..60d9ceb4f8e44ebc80b43402beb023597759963d 100644 (file)
@@ -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;