Found by the static analyzer Svace (ISP RAS).
Handle 'script_py' is created at pythonmod.c:436
by calling function 'fopen' and lost at pythonmod.c:457,465.
Signed-off-by: Petr Vaganov <petrvaganoff@gmail.com>
if(PyDict_SetItemString(pe->data, "script", fname) < 0) {
log_err("pythonmod: could not add item to dictionary");
Py_XDECREF(fname);
+ fclose(script_py);
goto python_init_fail;
}
Py_XDECREF(fname);
log_err("pythonmod: could not add mod_env object");
Py_XDECREF(pe->data); /* 2 times, here and on python_init_fail; */
/* on failure the reference is not stolen */
+ fclose(script_py);
goto python_init_fail;
}