This commit is contained in:
parent
e1b7c65eba
commit
c3e9c71da0
93
vim-7.1-diff_check.patch
Normal file
93
vim-7.1-diff_check.patch
Normal file
@ -0,0 +1,93 @@
|
||||
Index: vim71/src/diff.c
|
||||
===================================================================
|
||||
--- vim71.orig/src/diff.c
|
||||
+++ vim71/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
|
||||
@@ -661,6 +661,7 @@ ex_diffupdate(eap)
|
||||
char_u *tmp_diff;
|
||||
FILE *fd;
|
||||
int ok;
|
||||
+ int retval;
|
||||
|
||||
/* Delete all diffblocks. */
|
||||
diff_clear(curtab);
|
||||
@@ -706,7 +707,7 @@ ex_diffupdate(eap)
|
||||
{
|
||||
fwrite("line2\n", (size_t)6, (size_t)1, fd);
|
||||
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)
|
||||
{
|
||||
@@ -750,6 +751,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;
|
||||
@@ -782,10 +789,13 @@ ex_diffupdate(eap)
|
||||
continue;
|
||||
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);
|
||||
}
|
||||
@@ -802,13 +812,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;
|
||||
|
||||
#ifdef FEAT_EVAL
|
||||
if (*p_dex != NUL)
|
||||
@@ -842,13 +853,14 @@ diff_file(tmp_orig, tmp_new, tmp_diff)
|
||||
#ifdef FEAT_AUTOCMD
|
||||
++autocmd_block; /* 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
|
||||
--autocmd_block;
|
||||
#endif
|
||||
vim_free(cmd);
|
||||
}
|
||||
}
|
||||
+ return retval;
|
||||
}
|
||||
|
||||
/*
|
@ -1,3 +1,9 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 31 12:37:39 CEST 2007 - mkoenig@suse.de
|
||||
|
||||
- let vim detect a failing diff [#252901]
|
||||
- add /bin/ex symlink [#306423]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 22 15:40:16 CEST 2007 - mkoenig@suse.de
|
||||
|
||||
|
9
vim.spec
9
vim.spec
@ -12,7 +12,7 @@
|
||||
|
||||
Name: vim
|
||||
Version: 7.1
|
||||
Release: 30
|
||||
Release: 36
|
||||
#
|
||||
License: Other uncritical OpenSource License, http://vimdoc.sourceforge.net/htmldoc/uganda.html#license
|
||||
Group: Productivity/Editors/Vi
|
||||
@ -83,6 +83,7 @@ Patch15: %{name}-7.0-apparmor.patch
|
||||
Patch16: %{name}-7.0-flex-array.diff
|
||||
Patch17: vim-7.1-ftplugin_changelog.patch
|
||||
Patch18: vim-7.1-syntax_spec.patch
|
||||
Patch19: vim-7.1-diff_check.patch
|
||||
# tbd??? %name-6.3-ga-utf8.diff
|
||||
# tbd??? %name-6.3-initvals.diff
|
||||
# tbd??? vim64-svn-crash.patch
|
||||
@ -280,6 +281,7 @@ Authors:
|
||||
%patch16
|
||||
%patch17 -p1
|
||||
%patch18
|
||||
%patch19 -p1
|
||||
%patch100 -p0
|
||||
cp %{S:3} %{S:4} %{S:5} %{S:6} %{S:8} %{S:9} %{S:10} .
|
||||
rename no nb $RPM_BUILD_DIR/vim*/src/po/no.*
|
||||
@ -375,6 +377,7 @@ done
|
||||
%{__ln_s} -f /bin/vim %{buildroot}%{_bindir}/vim
|
||||
%{__ln_s} -f /bin/vim %{buildroot}%{_bindir}/vi
|
||||
%{__ln_s} -f vim %{buildroot}%{_bindir}/edit
|
||||
%{__ln_s} -f /bin/vim %{buildroot}/bin/ex
|
||||
#
|
||||
# man pages
|
||||
%{__ln_s} -f vim.1.gz %{buildroot}%{_mandir}/man1/vi.1.gz
|
||||
@ -489,6 +492,7 @@ fi
|
||||
# symlinks
|
||||
/bin/vi
|
||||
/bin/vim
|
||||
/bin/ex
|
||||
%{_bindir}/edit
|
||||
%{_bindir}/ex
|
||||
%{_bindir}/rview
|
||||
@ -633,6 +637,9 @@ fi
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Fri Aug 31 2007 - mkoenig@suse.de
|
||||
- let vim detect a failing diff [#252901]
|
||||
- add /bin/ex symlink [#306423]
|
||||
* Wed Aug 22 2007 - mkoenig@suse.de
|
||||
- really enable syntax highlighting [#274600]
|
||||
- update apparmor syntax rules [#301605]
|
||||
|
Loading…
Reference in New Issue
Block a user