bpo-33308: Fix a crash in the parser module when convert an ST object. (GH-6519)
Converting with line_info=False and col_info=True crashed before.
(cherry picked from commit e5362eaa75a154c6e91c5b1c47719d0a0f5ca48b)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
diff --git a/Modules/parsermodule.c b/Modules/parsermodule.c
index 2b98be4..38e5f75 100644
--- a/Modules/parsermodule.c
+++ b/Modules/parsermodule.c
@@ -135,18 +135,18 @@
goto error;
(void) addelem(result, 1, w);
- if (lineno == 1) {
+ if (lineno) {
w = PyLong_FromLong(n->n_lineno);
if (w == NULL)
goto error;
(void) addelem(result, 2, w);
}
- if (col_offset == 1) {
+ if (col_offset) {
w = PyLong_FromLong(n->n_col_offset);
if (w == NULL)
goto error;
- (void) addelem(result, 3, w);
+ (void) addelem(result, 2 + lineno, w);
}
}
else {