From 9abfa90a6ddd0ec00060bc371c62bcdae42aceaf Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Tue, 12 Jul 2005 13:17:59 +0000 Subject: bug [ 1232768 ] Mistakes in online docs under "5.3 Pure Embedding" --- Doc/ext/run-func.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/Doc/ext/run-func.c b/Doc/ext/run-func.c index b5be5c6..ff74290 100644 --- a/Doc/ext/run-func.c +++ b/Doc/ext/run-func.c @@ -20,11 +20,8 @@ main(int argc, char *argv[]) Py_DECREF(pName); if (pModule != NULL) { - pDict = PyModule_GetDict(pModule); - /* pDict is a borrowed reference */ - - pFunc = PyDict_GetItemString(pDict, argv[2]); - /* pFun: Borrowed reference */ + pFunc = PyDict_GetItemString(pModule, argv[2]); + /* pFunc is a new reference */ if (pFunc && PyCallable_Check(pFunc)) { pArgs = PyTuple_New(argc - 3); @@ -46,18 +43,19 @@ main(int argc, char *argv[]) Py_DECREF(pValue); } else { + Py_DECREF(pFunc); Py_DECREF(pModule); PyErr_Print(); fprintf(stderr,"Call failed\n"); return 1; } - /* pDict and pFunc are borrowed and must not be Py_DECREF-ed */ } else { if (PyErr_Occurred()) PyErr_Print(); fprintf(stderr, "Cannot find function \"%s\"\n", argv[2]); } + Py_XDECREF(pFunc); Py_DECREF(pModule); } else { -- cgit v0.12