Ismail Dönmez 2016-02-19 08:55:59 +00:00 committed by Git OBS Bridge
parent 54a2adcb32
commit 030d150c11
3 changed files with 1 additions and 96 deletions

View File

@ -1,93 +0,0 @@
Index: vim-7.4.843/src/diff.c
===================================================================
--- vim-7.4.843.orig/src/diff.c
+++ vim-7.4.843/src/diff.c
@@ -42,7 +42,7 @@ static void diff_check_unchanged __ARGS(
static int diff_check_sanity __ARGS((tabpage_T *tp, diff_T *dp));
static void diff_redraw __ARGS((int dofold));
static int diff_write __ARGS((buf_T *buf, char_u *fname));
-static void diff_file __ARGS((char_u *tmp_orig, char_u *tmp_new, char_u *tmp_diff));
+static int diff_file __ARGS((char_u *tmp_orig, char_u *tmp_new, char_u *tmp_diff));
static int diff_equal_entry __ARGS((diff_T *dp, int idx1, int idx2));
static int diff_cmp __ARGS((char_u *s1, char_u *s2));
#ifdef FEAT_FOLDING
@@ -667,6 +667,7 @@ ex_diffupdate(eap)
char_u *tmp_diff;
FILE *fd;
int ok;
+ int retval = 0;
int io_error = FALSE;
/* Delete all diffblocks. */
@@ -719,7 +720,7 @@ ex_diffupdate(eap)
if (fwrite("line2\n", (size_t)6, (size_t)1, fd) != 1)
io_error = TRUE;
fclose(fd);
- diff_file(tmp_orig, tmp_new, tmp_diff);
+ retval = diff_file(tmp_orig, tmp_new, tmp_diff);
fd = mch_fopen((char *)tmp_diff, "r");
if (fd == NULL)
io_error = TRUE;
@@ -765,6 +766,12 @@ ex_diffupdate(eap)
}
#endif
+ /* diff returned an error */
+ if (retval == 2) {
+ ok = FALSE;
+ break;
+ }
+
/* If we checked if "-a" works already, break here. */
if (diff_a_works != MAYBE)
break;
@@ -808,10 +815,13 @@ ex_diffupdate(eap)
continue; /* skip buffer that isn't loaded */
if (diff_write(buf, tmp_new) == FAIL)
continue;
- diff_file(tmp_orig, tmp_new, tmp_diff);
-
- /* Read the diff output and add each entry to the diff list. */
- diff_read(idx_orig, idx_new, tmp_diff);
+ retval = diff_file(tmp_orig, tmp_new, tmp_diff);
+ if(retval == 2)
+ EMSG(_("E97: Cannot create diffs"));
+ else {
+ /* Read the diff output and add each entry to the diff list. */
+ diff_read(idx_orig, idx_new, tmp_diff);
+ }
mch_remove(tmp_diff);
mch_remove(tmp_new);
}
@@ -831,13 +841,14 @@ theend:
/*
* Make a diff between files "tmp_orig" and "tmp_new", results in "tmp_diff".
*/
- static void
+ static int
diff_file(tmp_orig, tmp_new, tmp_diff)
char_u *tmp_orig;
char_u *tmp_new;
char_u *tmp_diff;
{
char_u *cmd;
+ int retval=0;
size_t len;
#ifdef FEAT_EVAL
@@ -873,13 +884,14 @@ diff_file(tmp_orig, tmp_new, tmp_diff)
#ifdef FEAT_AUTOCMD
block_autocmds(); /* Avoid ShellCmdPost stuff */
#endif
- (void)call_shell(cmd, SHELL_FILTER|SHELL_SILENT|SHELL_DOOUT);
+ retval = call_shell(cmd, SHELL_FILTER|SHELL_SILENT|SHELL_DOOUT);
#ifdef FEAT_AUTOCMD
unblock_autocmds();
#endif
vim_free(cmd);
}
}
+ return retval;
}
/*

View File

@ -45,7 +45,7 @@ Mon Feb 8 13:22:33 UTC 2016 - idonmez@suse.com
* The job feature isn't available on MS-Windows.
* ch_open() with a timeout doesn't work correctly.
* ch_sendexpr() does not use JS encoding.
- Temporarily disable vim-7.3-diff_check.patch
- Remove vim-7.3-diff_check.patch
-------------------------------------------------------------------
Fri Jan 29 08:45:41 UTC 2016 - idonmez@suse.com

View File

@ -88,7 +88,6 @@ Patch10: %{name}-7.3-name_vimrc.patch
Patch11: %{name}-7.3-mktemp_tutor.patch
Patch15: %{name}-7.4-filetype_apparmor.patch
Patch18: %{name}-7.3-filetype_spec.patch
#Patch19: %{name}-7.3-diff_check.patch
Patch21: %{name}-7.3-filetype_changes.patch
Patch22: %{name}-7.4-filetype_mine.patch
Patch100: vim-7.1.314-CVE-2009-0316-debian.patch
@ -164,7 +163,6 @@ want less features, you might want to install vim instead.
cp %{SOURCE23} runtime/syntax/apparmor.vim
%patch15 -p1
%patch18 -p1
#%patch19 -p1
%patch21 -p1
%patch22 -p1
%patch100 -p1