From 0f868375ff991ad24fa7a9b79ceea9b64478c642 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Tue, 17 Dec 1996 01:02:18 +0000 Subject: Check errors returned by recursive call to Split(). --- Modules/_tkinter.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/Modules/_tkinter.c b/Modules/_tkinter.c index 10d9f9f..3ce0fac 100644 --- a/Modules/_tkinter.c +++ b/Modules/_tkinter.c @@ -261,13 +261,20 @@ Split (self, list) v = PyString_FromString (""); else if (argc == 1) v = PyString_FromString (argv[0]); - else + else if ((v = PyTuple_New (argc)) != NULL) { int i; - - v = PyTuple_New (argc); - for (i = 0; i < argc; i++) - PyTuple_SetItem (v, i, Split (self, argv[i])); + PyObject *w; + + for (i = 0; i < argc; i++) { + if ((w = Split (self, argv[i])) == NULL) + { + Py_DECREF(v); + v = NULL; + break; + } + PyTuple_SetItem (v, i, w); + } } ckfree (FREECAST argv); -- cgit v0.12