pybind11/tests/test_embed
Jason Rhinelander 4edb1ce20c Destroy internals if created during Py_Finalize()
Py_Finalize could potentially invoke code that calls `get_internals()`,
which could create a new internals object if one didn't exist.
`finalize_interpreter()` didn't catch this because it only used the
pre-finalize interpreter pointer status; if this happens, it results in
the internals pointer not being properly destroyed with the interpreter,
which leaks, and also causes a `get_internals()` under a future
interpreter to return an internals object that is wrong in various ways.
2017-06-08 16:42:06 -03:00
..
CMakeLists.txt Add Catch framework for testing embedding support and C++-side features 2017-05-28 02:12:24 +02:00
catch.cpp Add C++ interface for the Python interpreter 2017-05-28 02:12:24 +02:00
test_interpreter.cpp Destroy internals if created during Py_Finalize() 2017-06-08 16:42:06 -03:00
test_interpreter.py Add Catch framework for testing embedding support and C++-side features 2017-05-28 02:12:24 +02:00