0
|
1 |
To: [email protected]
|
|
2 |
Subject: Patch 7.2.086
|
|
3 |
Fcc: outbox
|
|
4 |
From: Bram Moolenaar <[email protected]>
|
|
5 |
Mime-Version: 1.0
|
|
6 |
Content-Type: text/plain; charset=ISO-8859-1
|
|
7 |
Content-Transfer-Encoding: 8bit
|
|
8 |
------------
|
|
9 |
|
|
10 |
Patch 7.2.086
|
|
11 |
Problem: Using ":diffget 1" in buffer 1 corrupts the text.
|
|
12 |
Solution: Don't do anything when source and destination of ":diffget" or
|
|
13 |
":diffput" is the same buffer. (Dominique Pelle)
|
|
14 |
Files: src/diff.c
|
|
15 |
|
|
16 |
|
|
17 |
*** ../vim-7.2.085/src/diff.c Sun Nov 30 15:15:56 2008
|
|
18 |
--- src/diff.c Wed Jan 14 20:40:25 2009
|
|
19 |
***************
|
|
20 |
*** 8,14 ****
|
|
21 |
*/
|
|
22 |
|
|
23 |
/*
|
|
24 |
! * diff.c: code for diff'ing two or three buffers.
|
|
25 |
*/
|
|
26 |
|
|
27 |
#include "vim.h"
|
|
28 |
--- 8,14 ----
|
|
29 |
*/
|
|
30 |
|
|
31 |
/*
|
|
32 |
! * diff.c: code for diff'ing two, three or four buffers.
|
|
33 |
*/
|
|
34 |
|
|
35 |
#include "vim.h"
|
|
36 |
***************
|
|
37 |
*** 116,122 ****
|
|
38 |
* Add a buffer to make diffs for.
|
|
39 |
* Call this when a new buffer is being edited in the current window where
|
|
40 |
* 'diff' is set.
|
|
41 |
! * Marks the current buffer as being part of the diff and requireing updating.
|
|
42 |
* This must be done before any autocmd, because a command may use info
|
|
43 |
* about the screen contents.
|
|
44 |
*/
|
|
45 |
--- 116,122 ----
|
|
46 |
* Add a buffer to make diffs for.
|
|
47 |
* Call this when a new buffer is being edited in the current window where
|
|
48 |
* 'diff' is set.
|
|
49 |
! * Marks the current buffer as being part of the diff and requiring updating.
|
|
50 |
* This must be done before any autocmd, because a command may use info
|
|
51 |
* about the screen contents.
|
|
52 |
*/
|
|
53 |
***************
|
|
54 |
*** 929,935 ****
|
|
55 |
goto theend;
|
|
56 |
|
|
57 |
#ifdef UNIX
|
|
58 |
! /* Temporaraly chdir to /tmp, to avoid patching files in the current
|
|
59 |
* directory when the patch file contains more than one patch. When we
|
|
60 |
* have our own temp dir use that instead, it will be cleaned up when we
|
|
61 |
* exit (any .rej files created). Don't change directory if we can't
|
|
62 |
--- 929,935 ----
|
|
63 |
goto theend;
|
|
64 |
|
|
65 |
#ifdef UNIX
|
|
66 |
! /* Temporarily chdir to /tmp, to avoid patching files in the current
|
|
67 |
* directory when the patch file contains more than one patch. When we
|
|
68 |
* have our own temp dir use that instead, it will be cleaned up when we
|
|
69 |
* exit (any .rej files created). Don't change directory if we can't
|
|
70 |
***************
|
|
71 |
*** 2129,2134 ****
|
|
72 |
--- 2129,2136 ----
|
|
73 |
EMSG2(_("E102: Can't find buffer \"%s\""), eap->arg);
|
|
74 |
return;
|
|
75 |
}
|
|
76 |
+ if (buf == curbuf)
|
|
77 |
+ return; /* nothing to do */
|
|
78 |
idx_other = diff_buf_idx(buf);
|
|
79 |
if (idx_other == DB_COUNT)
|
|
80 |
{
|
|
81 |
*** ../vim-7.2.085/src/version.c Thu Jan 22 18:32:55 2009
|
|
82 |
--- src/version.c Thu Jan 22 20:46:54 2009
|
|
83 |
***************
|
|
84 |
*** 678,679 ****
|
|
85 |
--- 678,681 ----
|
|
86 |
{ /* Add new patch number below this line */
|
|
87 |
+ /**/
|
|
88 |
+ 86,
|
|
89 |
/**/
|
|
90 |
|
|
91 |
--
|
|
92 |
Shift happens.
|
|
93 |
-- Doppler
|
|
94 |
|
|
95 |
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
|
|
96 |
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
|
|
97 |
\\\ download, build and distribute -- http://www.A-A-P.org ///
|
|
98 |
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
|