Merge remote-tracking branch 'origin/master' into python_refactoring
This commit is contained in:
@ -71,23 +71,25 @@ PythonImpl::PythonImpl(LAMMPS *lmp) : Pointers(lmp)
|
||||
|
||||
PythonImpl::~PythonImpl()
|
||||
{
|
||||
// clean up
|
||||
PyGILState_STATE gstate = PyGILState_Ensure();
|
||||
if(pyMain) {
|
||||
// clean up
|
||||
PyGILState_STATE gstate = PyGILState_Ensure();
|
||||
|
||||
for (int i = 0; i < nfunc; i++) {
|
||||
delete [] pfuncs[i].name;
|
||||
deallocate(i);
|
||||
PyObject *pFunc = (PyObject *) pfuncs[i].pFunc;
|
||||
Py_XDECREF(pFunc);
|
||||
}
|
||||
for (int i = 0; i < nfunc; i++) {
|
||||
delete [] pfuncs[i].name;
|
||||
deallocate(i);
|
||||
PyObject *pFunc = (PyObject *) pfuncs[i].pFunc;
|
||||
Py_XDECREF(pFunc);
|
||||
}
|
||||
|
||||
// shutdown Python interpreter
|
||||
// shutdown Python interpreter
|
||||
|
||||
if (pyMain && !external_interpreter) {
|
||||
Py_Finalize();
|
||||
}
|
||||
else {
|
||||
PyGILState_Release(gstate);
|
||||
if (!external_interpreter) {
|
||||
Py_Finalize();
|
||||
}
|
||||
else {
|
||||
PyGILState_Release(gstate);
|
||||
}
|
||||
}
|
||||
|
||||
memory->sfree(pfuncs);
|
||||
|
||||
Reference in New Issue
Block a user