summaryrefslogtreecommitdiff
path: root/src/if_py_both.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/if_py_both.h')
-rw-r--r--src/if_py_both.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/if_py_both.h b/src/if_py_both.h
index c7df93be2..5bd6a0e67 100644
--- a/src/if_py_both.h
+++ b/src/if_py_both.h
@@ -3374,7 +3374,7 @@ OptionsItem(OptionsObject *self, PyObject *keyObject)
char_u *stringval;
PyObject *todecref;
- if (self->Check(self->from))
+ if (self->Check(self->fromObj))
return NULL;
if (!(key = StringToChars(keyObject, &todecref)))
@@ -3565,7 +3565,7 @@ OptionsAssItem(OptionsObject *self, PyObject *keyObject, PyObject *valObject)
int ret = 0;
PyObject *todecref;
- if (self->Check(self->from))
+ if (self->Check(self->fromObj))
return -1;
if (!(key = StringToChars(keyObject, &todecref)))
@@ -4334,10 +4334,15 @@ GetBufferLineList(buf_T *buf, PyInt lo, PyInt hi)
for (i = 0; i < n; ++i)
{
- PyObject *string = LineToString(
- (char *)ml_get_buf(buf, (linenr_T)(lo+i), FALSE));
+ linenr_T lnum = (linenr_T)(lo + i);
+ char *text;
+ PyObject *string;
- // Error check - was the Python string creation OK?
+ if (lnum > buf->b_ml.ml_line_count)
+ text = "";
+ else
+ text = (char *)ml_get_buf(buf, lnum, FALSE);
+ string = LineToString(text);
if (string == NULL)
{
Py_DECREF(list);