[vim] - patchlevel 1064
Karsten Hopp
karsten at fedoraproject.org
Tue Jun 4 10:12:30 UTC 2013
commit 99c6df523bc28e91a0846f24e17db3dc1547b0f8
Author: Karsten Hopp <karsten at redhat.com>
Date: Tue Jun 4 12:06:31 2013 +0200
- patchlevel 1064
7.3.1064 | 192 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 192 insertions(+), 0 deletions(-)
---
diff --git a/7.3.1064 b/7.3.1064
new file mode 100644
index 0000000..c2e2749
--- /dev/null
+++ b/7.3.1064
@@ -0,0 +1,192 @@
+To: vim_dev at googlegroups.com
+Subject: Patch 7.3.1064
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.1064
+Problem: Python: insufficient error checking.
+Solution: Python patch 23. (ZyX)
+Files: src/if_py_both.h
+
+
+*** ../vim-7.3.1063/src/if_py_both.h 2013-05-30 13:14:06.000000000 +0200
+--- src/if_py_both.h 2013-05-30 13:16:23.000000000 +0200
+***************
+*** 3304,3313 ****
+
+ for (i = 0; i < new_len; ++i)
+ {
+! PyObject *line = PyList_GetItem(list, i);
+
+! array[i] = StringToLine(line);
+! if (array[i] == NULL)
+ {
+ while (i)
+ vim_free(array[--i]);
+--- 3304,3313 ----
+
+ for (i = 0; i < new_len; ++i)
+ {
+! PyObject *line;
+
+! if (!(line = PyList_GetItem(list, i)) ||
+! !(array[i] = StringToLine(line)))
+ {
+ while (i)
+ vim_free(array[--i]);
+***************
+*** 3319,3325 ****
+ VimTryStart();
+ PyErr_Clear();
+
+! // START of region without "return". Must call restore_buffer()!
+ switch_buffer(&savebuf, buf);
+
+ if (u_save((linenr_T)(lo-1), (linenr_T)hi) == FAIL)
+--- 3319,3325 ----
+ VimTryStart();
+ PyErr_Clear();
+
+! /* START of region without "return". Must call restore_buffer()! */
+ switch_buffer(&savebuf, buf);
+
+ if (u_save((linenr_T)(lo-1), (linenr_T)hi) == FAIL)
+***************
+*** 3400,3406 ****
+ if (buf == savebuf)
+ py_fix_cursor((linenr_T)lo, (linenr_T)hi, (linenr_T)extra);
+
+! // END of region without "return".
+ restore_buffer(savebuf);
+
+ if (VimTryEnd())
+--- 3400,3406 ----
+ if (buf == savebuf)
+ py_fix_cursor((linenr_T)lo, (linenr_T)hi, (linenr_T)extra);
+
+! /* END of region without "return". */
+ restore_buffer(savebuf);
+
+ if (VimTryEnd())
+***************
+*** 3479,3488 ****
+
+ for (i = 0; i < size; ++i)
+ {
+! PyObject *line = PyList_GetItem(lines, i);
+! array[i] = StringToLine(line);
+
+! if (array[i] == NULL)
+ {
+ while (i)
+ vim_free(array[--i]);
+--- 3479,3488 ----
+
+ for (i = 0; i < size; ++i)
+ {
+! PyObject *line;
+
+! if (!(line = PyList_GetItem(lines, i)) ||
+! !(array[i] = StringToLine(line)))
+ {
+ while (i)
+ vim_free(array[--i]);
+***************
+*** 4014,4021 ****
+
+ if (!PyArg_ParseTuple(args, "s", &pmark))
+ return NULL;
+- mark = *pmark;
+
+ VimTryStart();
+ switch_buffer(&savebuf, self->buf);
+ posp = getmark(mark, FALSE);
+--- 4014,4028 ----
+
+ if (!PyArg_ParseTuple(args, "s", &pmark))
+ return NULL;
+
++ if (STRLEN(pmark) != 1)
++ {
++ PyErr_SetString(PyExc_ValueError,
++ _("mark name must be a single character"));
++ return NULL;
++ }
++
++ mark = *pmark;
+ VimTryStart();
+ switch_buffer(&savebuf, self->buf);
+ posp = getmark(mark, FALSE);
+***************
+*** 4258,4264 ****
+
+ if (value->ob_type != &BufferType)
+ {
+! PyErr_SetString(PyExc_TypeError, _("expected vim.buffer object"));
+ return -1;
+ }
+
+--- 4265,4271 ----
+
+ if (value->ob_type != &BufferType)
+ {
+! PyErr_SetString(PyExc_TypeError, _("expected vim.Buffer object"));
+ return -1;
+ }
+
+***************
+*** 4283,4289 ****
+
+ if (value->ob_type != &WindowType)
+ {
+! PyErr_SetString(PyExc_TypeError, _("expected vim.window object"));
+ return -1;
+ }
+
+--- 4290,4296 ----
+
+ if (value->ob_type != &WindowType)
+ {
+! PyErr_SetString(PyExc_TypeError, _("expected vim.Window object"));
+ return -1;
+ }
+
+***************
+*** 4315,4321 ****
+ {
+ if (value->ob_type != &TabPageType)
+ {
+! PyErr_SetString(PyExc_TypeError, _("expected vim.tabpage object"));
+ return -1;
+ }
+
+--- 4322,4328 ----
+ {
+ if (value->ob_type != &TabPageType)
+ {
+! PyErr_SetString(PyExc_TypeError, _("expected vim.TabPage object"));
+ return -1;
+ }
+
+*** ../vim-7.3.1063/src/version.c 2013-05-30 13:14:06.000000000 +0200
+--- src/version.c 2013-05-30 13:15:32.000000000 +0200
+***************
+*** 730,731 ****
+--- 730,733 ----
+ { /* Add new patch number below this line */
++ /**/
++ 1064,
+ /**/
+
+--
+How To Keep A Healthy Level Of Insanity:
+7. Finish all your sentences with "in accordance with the prophecy".
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ an exciting new programming language -- http://www.Zimbu.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
More information about the scm-commits
mailing list