-
Utkarsh Ayachit authored
When running pvpython, if your Python script loaded some plugins (from shared libraries) and called "quit" or "exit" in the Python script itself, pvpython would segfault, if you created a proxy from the plugin. The problem was arising from the fact that the plugin shared library was unloaded before the VTK object corresponding to the proxy was destroyed during ProcessModule singleton cleanup. This was happenining because the vtkPVPluginLoader cleaner singleton (which unloads libraries) was finalized before the vtkPVPluginLoader singleton (which cleans up unreleased proxies). Fixed by adding a Schwarz counter to ensure that the plugin loader is not finalized before the process module. Since vtkPVPluginLoader.h is not included in a large number of translation units (and there's never need for it), the overhead for this is minimal. Change-Id: I0db6f4fc4e0657a623cb2dccefbb55a90ec05cab
fcc67852