From c501415a481a48a51ea69f39d734fb5fc16a62b9 Mon Sep 17 00:00:00 2001 From: zivenger Date: Fri, 12 Jun 2026 09:49:47 +0800 Subject: [PATCH] Fix double decref after failed PyList_SetItem in C tokenizer (#361) PyList_SetItem steals the item reference even on failure, so the error path must not call Py_DECREF on the same object. Co-authored-by: Cursor --- src/mwparserfromhell/parser/ctokenizer/tok_parse.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/mwparserfromhell/parser/ctokenizer/tok_parse.c b/src/mwparserfromhell/parser/ctokenizer/tok_parse.c index f42add1..72c4bed 100644 --- a/src/mwparserfromhell/parser/ctokenizer/tok_parse.c +++ b/src/mwparserfromhell/parser/ctokenizer/tok_parse.c @@ -1753,7 +1753,6 @@ Tokenizer_handle_single_tag_end(Tokenizer *self) return NULL; } if (PyList_SetItem(self->topstack->stack, index, token)) { - Py_DECREF(token); return NULL; } return Tokenizer_pop(self);