]> git.pld-linux.org Git - packages/vim.git/blame - 7.2.153
- allow missing runtime/syntax/* dir
[packages/vim.git] / 7.2.153
CommitLineData
4c0a682a
AG
1To: vim-dev@vim.org
2Subject: Patch 7.2.153
3Fcc: outbox
4From: Bram Moolenaar <Bram@moolenaar.net>
5Mime-Version: 1.0
6Content-Type: text/plain; charset=ISO-8859-1
7Content-Transfer-Encoding: 8bit
8------------
9
10Patch 7.2.153
11Problem: Memory leak for ":recover empty_dir/".
12Solution: Free files[] when it becomes empty. (Dominique Pelle)
13Files: src/memline.c
14
15
16*** ../vim-7.2.152/src/memline.c Sun Jul 13 19:40:43 2008
17--- src/memline.c Wed Apr 22 11:48:35 2009
18***************
19*** 1554,1563 ****
20 for (i = 0; i < num_files; ++i)
21 if (fullpathcmp(p, files[i], TRUE) & FPC_SAME)
22 {
23 vim_free(files[i]);
24! --num_files;
25! for ( ; i < num_files; ++i)
26! files[i] = files[i + 1];
27 }
28 }
29 if (nr > 0)
30--- 1554,1568 ----
31 for (i = 0; i < num_files; ++i)
32 if (fullpathcmp(p, files[i], TRUE) & FPC_SAME)
33 {
34+ /* Remove the name from files[i]. Move further entries
35+ * down. When the array becomes empty free it here, since
36+ * FreeWild() won't be called below. */
37 vim_free(files[i]);
38! if (--num_files == 0)
39! vim_free(files);
40! else
41! for ( ; i < num_files; ++i)
42! files[i] = files[i + 1];
43 }
44 }
45 if (nr > 0)
46***************
47*** 3522,3528 ****
48 if (errno == EINVAL || errno == ENOENT)
49 {
50 /* Found non-symlink or not existing file, stop here.
51! * When at the first level use the unmodifed name, skip the
52 * call to vim_FullName(). */
53 if (depth == 1)
54 return FAIL;
55--- 3527,3533 ----
56 if (errno == EINVAL || errno == ENOENT)
57 {
58 /* Found non-symlink or not existing file, stop here.
59! * When at the first level use the unmodified name, skip the
60 * call to vim_FullName(). */
61 if (depth == 1)
62 return FAIL;
63***************
64*** 4560,4566 ****
65 buf->b_ml.ml_chunksize + curix,
66 (buf->b_ml.ml_usedchunks - curix) *
67 sizeof(chunksize_T));
68! /* Compute length of first half of lines in the splitted chunk */
69 size = 0;
70 linecnt = 0;
71 while (curline < buf->b_ml.ml_line_count
72--- 4568,4574 ----
73 buf->b_ml.ml_chunksize + curix,
74 (buf->b_ml.ml_usedchunks - curix) *
75 sizeof(chunksize_T));
76! /* Compute length of first half of lines in the split chunk */
77 size = 0;
78 linecnt = 0;
79 while (curline < buf->b_ml.ml_line_count
80*** ../vim-7.2.152/src/version.c Wed Apr 22 14:42:26 2009
81--- src/version.c Wed Apr 22 15:34:18 2009
82***************
83*** 678,679 ****
84--- 678,681 ----
85 { /* Add new patch number below this line */
86+ /**/
87+ 153,
88 /**/
89
90--
91Windows
92M!uqoms
93
94 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
95/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
96\\\ download, build and distribute -- http://www.A-A-P.org ///
97 \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
This page took 0.04338 seconds and 4 git commands to generate.