Remove unneeded PyErr_Clear() calls after PyErr_Print(). (GH-8699)
authorZackery Spytz <zspytz@gmail.com>
Tue, 7 Aug 2018 14:26:58 +0000 (08:26 -0600)
committerSerhiy Storchaka <storchaka@gmail.com>
Tue, 7 Aug 2018 14:26:58 +0000 (17:26 +0300)
PyErr_Print() always clears the error indicator, so there is no need
to call PyErr_Clear() immediately afterwards.

Modules/main.c

index da3441f3c96e047b3e5f14f6c1731391959536ef..1640758fd01a6b42e0baf391a86a845cccbd1035 100644 (file)
@@ -185,7 +185,6 @@ pymain_run_interactive_hook(void)
 error:
     PySys_WriteStderr("Failed calling sys.__interactivehook__\n");
     PyErr_Print();
-    PyErr_Clear();
 }
 
 
@@ -267,7 +266,6 @@ error:
     Py_XDECREF(sys_path0);
     PySys_WriteStderr("Failed checking if argv[0] is an import path entry\n");
     PyErr_Print();
-    PyErr_Clear();
     return NULL;
 }
 
@@ -1081,7 +1079,6 @@ pymain_run_startup(_PyMain *pymain, _PyCoreConfig *config, PyCompilerFlags *cf)
         PyErr_SetFromErrnoWithFilename(PyExc_OSError,
                         startup);
         PyErr_Print();
-        PyErr_Clear();
         return;
     }