diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2014-12-16 15:39:26 -0500 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2014-12-16 15:39:26 -0500 |
commit | 10a45846dc959f8b3ab9436f0809e90d1adf4ee4 (patch) | |
tree | b0d02669f08f94b80abcc0a8d9687ba4c8c80561 | |
parent | 3a61b84543c7cd843fe60d9ec4b356fb18f6a726 (diff) | |
parent | e0b23b3d090f58c772ff0175c38afa1d5e0f1612 (diff) | |
download | rneovim-10a45846dc959f8b3ab9436f0809e90d1adf4ee4.tar.gz rneovim-10a45846dc959f8b3ab9436f0809e90d1adf4ee4.tar.bz2 rneovim-10a45846dc959f8b3ab9436f0809e90d1adf4ee4.zip |
Merge pull request #1688 from elmart/coverity-issues-1
coverity issues
-rw-r--r-- | src/nvim/ex_docmd.c | 4 | ||||
-rw-r--r-- | src/nvim/fileio.c | 32 | ||||
-rw-r--r-- | src/nvim/ops.c | 6 | ||||
-rw-r--r-- | src/nvim/undo.c | 2 |
4 files changed, 24 insertions, 20 deletions
diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c index 56c8206d2a..65a0017e20 100644 --- a/src/nvim/ex_docmd.c +++ b/src/nvim/ex_docmd.c @@ -8543,7 +8543,9 @@ static void ex_loadview(exarg_T *eap) fname = get_view_file(*eap->arg); if (fname != NULL) { - do_source(fname, FALSE, DOSO_NONE); + if (do_source(fname, FALSE, DOSO_NONE) == FAIL) { + EMSG2(_(e_notopen), fname); + } free(fname); } } diff --git a/src/nvim/fileio.c b/src/nvim/fileio.c index 9734ac07f9..9c6d7c96bb 100644 --- a/src/nvim/fileio.c +++ b/src/nvim/fileio.c @@ -2839,27 +2839,25 @@ buf_write ( * Check if backup file already exists. */ if (os_fileinfo((char *)backup, &file_info_new)) { - /* - * Check if backup file is same as original file. - * May happen when modname() gave the same file back (e.g. silly - * link). If we don't check here, we either ruin the file when - * copying or erase it after writing. - */ if (os_fileinfo_id_equal(&file_info_new, &file_info_old)) { + /* + * Backup file is same as original file. + * May happen when modname() gave the same file back (e.g. silly + * link). If we don't check here, we either ruin the file when + * copying or erase it after writing. + */ free(backup); backup = NULL; /* no backup file to delete */ - } - - /* - * If we are not going to keep the backup file, don't - * delete an existing one, try to use another name. - * Change one character, just before the extension. - */ - if (!p_bk) { - wp = backup + STRLEN(backup) - 1 - - STRLEN(backup_ext); - if (wp < backup) /* empty file name ??? */ + } else if (!p_bk) { + /* + * We are not going to keep the backup file, so don't + * delete an existing one, and try to use another name instead. + * Change one character, just before the extension. + */ + wp = backup + STRLEN(backup) - 1 - STRLEN(backup_ext); + if (wp < backup) { /* empty file name ??? */ wp = backup; + } *wp = 'z'; while (*wp > 'a' && os_fileinfo((char *)backup, &file_info_new)) { diff --git a/src/nvim/ops.c b/src/nvim/ops.c index a6dee2be5b..931b877a95 100644 --- a/src/nvim/ops.c +++ b/src/nvim/ops.c @@ -30,6 +30,7 @@ #include "nvim/fold.h" #include "nvim/getchar.h" #include "nvim/indent.h" +#include "nvim/log.h" #include "nvim/mark.h" #include "nvim/mbyte.h" #include "nvim/memline.h" @@ -2641,7 +2642,10 @@ do_put ( /* Autocommands may be executed when saving lines for undo, which may make * y_array invalid. Start undo now to avoid that. */ - u_save(curwin->w_cursor.lnum, curwin->w_cursor.lnum + 1); + if (u_save(curwin->w_cursor.lnum, curwin->w_cursor.lnum + 1) == FAIL) { + ELOG(_("Failed to save undo information")); + return; + } if (insert_string != NULL) { y_type = MCHAR; diff --git a/src/nvim/undo.c b/src/nvim/undo.c index 2ab31b6cfd..9a3da5bcdb 100644 --- a/src/nvim/undo.c +++ b/src/nvim/undo.c @@ -230,7 +230,7 @@ int u_save(linenr_T top, linenr_T bot) if (top > curbuf->b_ml.ml_line_count || top >= bot || bot > curbuf->b_ml.ml_line_count + 1) - return FALSE; /* rely on caller to do error messages */ + return FAIL; /* rely on caller to do error messages */ if (top + 2 == bot) u_saveline((linenr_T)(top + 1)); |