updated kdlibcpp version to 1.2.11

This commit is contained in:
ussrhero 2019-10-02 00:28:11 +03:00
parent a99b758dd9
commit e22b4cd38a
2 changed files with 21 additions and 11 deletions

View File

@ -450,14 +450,24 @@ struct SymbolEnumeratorAdapter
return obj; return obj;
} }
std::wstring next() python::tuple next()
{ {
auto symName = m_symEnum->Next(); std::wstring name;
kdlib::MEMOFFSET_64 offset;
kdlib::TypeInfoPtr typeInfo;
if (symName.empty()) {
throw StopIteration("No more data."); AutoRestorePyState pystate;
return symName; if (!m_symEnum->Next())
throw StopIteration("No more data.");
name = m_symEnum->getName();
offset = m_symEnum->getOffset();
typeInfo = m_symEnum->getType();
}
return python::make_tuple(name, offset, typeInfo);
} }
private: private:

View File

@ -387,9 +387,9 @@ class TypeInfoTest( unittest.TestCase ):
self.assertTrue(ti.isStaticField("m_staticConst")) self.assertTrue(ti.isStaticField("m_staticConst"))
self.assertFalse(ti.isConstField("m_staticConst")) self.assertFalse(ti.isConstField("m_staticConst"))
def testClangCompile(self): #def testClangCompile(self):
src = "#include <windows.h>\r\n"; # src = "#include <windows.h>\r\n";
opt = "-I\"C:/Program Files (x86)/Windows Kits/8.1/Include/um\" -I\"C:/Program Files (x86)/Windows Kits/8.1/Include/shared\" -w"; # opt = "-I\"C:/Program Files (x86)/Windows Kits/8.1/Include/um\" -I\"C:/Program Files (x86)/Windows Kits/8.1/Include/shared\" -w";
symEnum = pykd.getSymbolProviderFromSource(src, opt) # symEnum = pykd.getSymbolProviderFromSource(src, opt)
for sym in symEnum: # for sym, _, _ in symEnum:
print(sym) # print(sym)