diff options
Diffstat (limited to 'Python/marshal.c')
-rw-r--r-- | Python/marshal.c | 14 |
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; |