summaryrefslogtreecommitdiff
path: root/Python/marshal.c
diff options
context:
space:
mode:
Diffstat (limited to 'Python/marshal.c')
-rw-r--r--Python/marshal.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/Python/marshal.c b/Python/marshal.c
index 6c08189cca..d7fdb83a61 100644
--- a/Python/marshal.c
+++ b/Python/marshal.c
@@ -524,6 +524,8 @@ w_complex_object(PyObject *v, char flag, WFILE *p)
w_object(co->co_name, p);
w_long(co->co_firstlineno, p);
w_object(co->co_linetable, p);
+ w_object(co->co_endlinetable, p);
+ w_object(co->co_columntable, p);
w_object(co->co_exceptiontable, p);
}
else if (PyObject_CheckBuffer(v)) {
@@ -1315,6 +1317,8 @@ r_object(RFILE *p)
PyObject *name = NULL;
int firstlineno;
PyObject *linetable = NULL;
+ PyObject* endlinetable = NULL;
+ PyObject* columntable = NULL;
PyObject *exceptiontable = NULL;
idx = r_ref_reserve(flag, p);
@@ -1367,6 +1371,12 @@ r_object(RFILE *p)
linetable = r_object(p);
if (linetable == NULL)
goto code_error;
+ endlinetable = r_object(p);
+ if (endlinetable == NULL)
+ goto code_error;
+ columntable = r_object(p);
+ if (columntable == NULL)
+ goto code_error;
exceptiontable = r_object(p);
if (exceptiontable == NULL)
goto code_error;
@@ -1379,6 +1389,8 @@ r_object(RFILE *p)
.code = code,
.firstlineno = firstlineno,
.linetable = linetable,
+ .endlinetable = endlinetable,
+ .columntable = columntable,
.consts = consts,
.names = names,
@@ -1415,6 +1427,8 @@ r_object(RFILE *p)
Py_XDECREF(filename);
Py_XDECREF(name);
Py_XDECREF(linetable);
+ Py_XDECREF(endlinetable);
+ Py_XDECREF(columntable);
Py_XDECREF(exceptiontable);
}
retval = v;