summaryrefslogtreecommitdiffstats
path: root/source/ap/vim/patches/7.3.307
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap/vim/patches/7.3.307')
-rw-r--r--source/ap/vim/patches/7.3.307180
1 files changed, 0 insertions, 180 deletions
diff --git a/source/ap/vim/patches/7.3.307 b/source/ap/vim/patches/7.3.307
deleted file mode 100644
index 3fd95e112..000000000
--- a/source/ap/vim/patches/7.3.307
+++ /dev/null
@@ -1,180 +0,0 @@
-To: vim_dev@googlegroups.com
-Subject: Patch 7.3.307
-Fcc: outbox
-From: Bram Moolenaar <Bram@moolenaar.net>
-Mime-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-------------
-
-Patch 7.3.307
-Problem: Python 3 doesn't support slice assignment.
-Solution: Implement slices. (Brett Overesch, Roland Puntaier)
-Files: src/if_python3.c
-
-
-*** ../vim-7.3.306/src/if_python3.c 2011-08-28 16:00:14.000000000 +0200
---- src/if_python3.c 2011-09-14 15:01:26.000000000 +0200
-***************
-*** 855,862 ****
-
- static Py_ssize_t BufferLength(PyObject *);
- static PyObject *BufferItem(PyObject *, Py_ssize_t);
-! static PyObject* BufferSubscript(PyObject *self, PyObject* idx);
-! static Py_ssize_t BufferAsSubscript(PyObject *self, PyObject* idx, PyObject* val);
-
-
- /* Line range type - Implementation functions
---- 855,862 ----
-
- static Py_ssize_t BufferLength(PyObject *);
- static PyObject *BufferItem(PyObject *, Py_ssize_t);
-! static PyObject* BufferSubscript(PyObject *self, PyObject *idx);
-! static Py_ssize_t BufferAsSubscript(PyObject *self, PyObject *idx, PyObject *val);
-
-
- /* Line range type - Implementation functions
-***************
-*** 865,872 ****
-
- #define RangeType_Check(obj) ((obj)->ob_base.ob_type == &RangeType)
-
-! static PyObject* RangeSubscript(PyObject *self, PyObject* idx);
- static Py_ssize_t RangeAsItem(PyObject *, Py_ssize_t, PyObject *);
-
- /* Current objects type - Implementation functions
- * -----------------------------------------------
---- 865,873 ----
-
- #define RangeType_Check(obj) ((obj)->ob_base.ob_type == &RangeType)
-
-! static PyObject* RangeSubscript(PyObject *self, PyObject *idx);
- static Py_ssize_t RangeAsItem(PyObject *, Py_ssize_t, PyObject *);
-+ static Py_ssize_t RangeAsSubscript(PyObject *self, PyObject *idx, PyObject *val);
-
- /* Current objects type - Implementation functions
- * -----------------------------------------------
-***************
-*** 1035,1041 ****
- &step, &slicelen) < 0) {
- return NULL;
- }
-! return BufferSlice(self,start,stop);
- } else {
- PyErr_SetString(PyExc_IndexError, "Index must be int or slice");
- return NULL;
---- 1036,1042 ----
- &step, &slicelen) < 0) {
- return NULL;
- }
-! return BufferSlice(self, start, stop);
- } else {
- PyErr_SetString(PyExc_IndexError, "Index must be int or slice");
- return NULL;
-***************
-*** 1084,1090 ****
- PyMappingMethods RangeAsMapping = {
- /* mp_length */ (lenfunc)RangeLength,
- /* mp_subscript */ (binaryfunc)RangeSubscript,
-! /* mp_ass_subscript */ (objobjargproc)0,
- };
-
- /* Line range object - Implementation
---- 1085,1091 ----
- PyMappingMethods RangeAsMapping = {
- /* mp_length */ (lenfunc)RangeLength,
- /* mp_subscript */ (binaryfunc)RangeSubscript,
-! /* mp_ass_subscript */ (objobjargproc)RangeAsSubscript,
- };
-
- /* Line range object - Implementation
-***************
-*** 1123,1128 ****
---- 1124,1138 ----
- &((RangeObject *)(self))->end);
- }
-
-+ static Py_ssize_t
-+ RangeAsSlice(PyObject *self, Py_ssize_t lo, Py_ssize_t hi, PyObject *val)
-+ {
-+ return RBAsSlice(((RangeObject *)(self))->buf, lo, hi, val,
-+ ((RangeObject *)(self))->start,
-+ ((RangeObject *)(self))->end,
-+ &((RangeObject *)(self))->end);
-+ }
-+
- static PyObject *
- RangeSubscript(PyObject *self, PyObject* idx)
- {
-***************
-*** 1138,1150 ****
- &step, &slicelen) < 0) {
- return NULL;
- }
-! return RangeSlice(self,start,stop+1);
- } else {
- PyErr_SetString(PyExc_IndexError, "Index must be int or slice");
- return NULL;
- }
- }
-
- /* Buffer list object - Definitions
- */
-
---- 1148,1183 ----
- &step, &slicelen) < 0) {
- return NULL;
- }
-! return RangeSlice(self, start, stop);
- } else {
- PyErr_SetString(PyExc_IndexError, "Index must be int or slice");
- return NULL;
- }
- }
-
-+ static Py_ssize_t
-+ RangeAsSubscript(PyObject *self, PyObject *idx, PyObject *val)
-+ {
-+ if (PyLong_Check(idx)) {
-+ long n = PyLong_AsLong(idx);
-+ return RangeAsItem(self, n, val);
-+ } else if (PySlice_Check(idx)) {
-+ Py_ssize_t start, stop, step, slicelen;
-+
-+ if (PySlice_GetIndicesEx((PySliceObject *)idx,
-+ ((RangeObject *)(self))->end-((RangeObject *)(self))->start+1,
-+ &start, &stop,
-+ &step, &slicelen) < 0) {
-+ return -1;
-+ }
-+ return RangeAsSlice(self, start, stop, val);
-+ } else {
-+ PyErr_SetString(PyExc_IndexError, "Index must be int or slice");
-+ return -1;
-+ }
-+ }
-+
-+
- /* Buffer list object - Definitions
- */
-
-*** ../vim-7.3.306/src/version.c 2011-09-14 14:43:21.000000000 +0200
---- src/version.c 2011-09-14 14:58:16.000000000 +0200
-***************
-*** 711,712 ****
---- 711,714 ----
- { /* Add new patch number below this line */
-+ /**/
-+ 307,
- /**/
-
---
-The process for understanding customers primarily involves sitting around with
-other marketing people and talking about what you would to if you were dumb
-enough to be a customer.
- (Scott Adams - The Dilbert principle)
-
- /// Bram Moolenaar -- Bram@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 ///