pykd_deinit function

This commit is contained in:
ussrhero 2018-05-07 01:05:16 +03:00
parent 5e75dc75d8
commit 2acdb04d26
2 changed files with 41 additions and 3 deletions

@ -1 +1 @@
Subproject commit 107f991bb61245de85862717550cb365d54de2b0 Subproject commit 6f96e046f3e79bc464759c6729d6d344083587e4

View File

@ -127,7 +127,8 @@ void uninitialize()
} }
BOOST_PYTHON_MODULE( pykd ) //BOOST_PYTHON_MODULE( pykd )
void pykd_init()
{ {
python::scope().attr("__version__") = pykdVersion; python::scope().attr("__version__") = pykdVersion;
python::scope().attr("version") = pykdVersion; python::scope().attr("version") = pykdVersion;
@ -1370,7 +1371,7 @@ BOOST_PYTHON_MODULE( pykd )
.value("FinalBreak", kdlib::FinalBreak) .value("FinalBreak", kdlib::FinalBreak)
.value("PreferDml", kdlib::PreferDml) .value("PreferDml", kdlib::PreferDml)
; ;
python::enum_<kdlib::BreakpointAccess>("breakpointAccess", "Breakpoint access types") python::enum_<kdlib::BreakpointAccess>("breakpointAccess", "Breakpoint access types")
.value("Read", kdlib::Read) .value("Read", kdlib::Read)
.value("Write", kdlib::Write) .value("Write", kdlib::Write)
@ -1382,3 +1383,40 @@ BOOST_PYTHON_MODULE( pykd )
} }
////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////
void pykd_deinit(void*)
{
kdlib::uninitialize();
}
//////////////////////////////////////////////////////////////////////////////////
PyMODINIT_FUNC
PyInit_pykd(void)
{
static PyModuleDef_Base initial_base = {
PyObject_HEAD_INIT(NULL)
0, /* m_init */
0, /* m_index */
0 /* m_copy */
};
static PyMethodDef initial_methods[] = { { 0, 0, 0, 0 } };
static struct PyModuleDef moduledef = { \
initial_base,
"pykd",
0, /* m_doc */
-1, /* m_size */
initial_methods,
0, /* m_reload */
0, /* m_traverse */
0, /* m_clear */
pykd_deinit
};
return boost::python::detail::init_module(moduledef, pykd_init);
}
//////////////////////////////////////////////////////////////////////////////////