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 @@
     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 @@
                 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 {
