mirror of
https://github.com/ivellioscolin/pykd.git
synced 2025-04-21 04:13:22 +08:00
[0.3.x] fixed : issue #13472 ( typedVar.fields() method raises exception )
git-svn-id: https://pykd.svn.codeplex.com/svn@89772 9b283d60-5439-405e-af05-b73fd8c4d996
This commit is contained in:
parent
49099b0763
commit
62c713b834
@ -75,7 +75,11 @@ python::list TypedVarAdapter::getFields( kdlib::TypedVar& typedVar )
|
|||||||
for ( size_t i = 0; i < typedVar.getElementCount(); ++i )
|
for ( size_t i = 0; i < typedVar.getElementCount(); ++i )
|
||||||
{
|
{
|
||||||
std::wstring name = typedVar.getElementName(i);
|
std::wstring name = typedVar.getElementName(i);
|
||||||
kdlib::MEMOFFSET_32 offset = typedVar.getElementOffset(i);
|
kdlib::MEMOFFSET_32 offset = 0;
|
||||||
|
|
||||||
|
if (!typedVar.getType()->isStaticMember(i) )
|
||||||
|
offset = typedVar.getElementOffset(i);
|
||||||
|
|
||||||
kdlib::TypedVarPtr val = typedVar.getElement(i);
|
kdlib::TypedVarPtr val = typedVar.getElement(i);
|
||||||
|
|
||||||
lst.push_back( FieldTuple( name, offset, val ) );
|
lst.push_back( FieldTuple( name, offset, val ) );
|
||||||
|
@ -325,3 +325,7 @@ class TypedVarTest( unittest.TestCase ):
|
|||||||
|
|
||||||
self.assertTrue( tv.getDebugStart() >= tv.getAddress() )
|
self.assertTrue( tv.getDebugStart() >= tv.getAddress() )
|
||||||
self.assertTrue( tv.getDebugEnd() <= tv.getAddress() + tv.sizeof() )
|
self.assertTrue( tv.getDebugEnd() <= tv.getAddress() + tv.sizeof() )
|
||||||
|
|
||||||
|
def testFields(self):
|
||||||
|
tv = pykd.typedVar( "g_classChild")
|
||||||
|
self.assertTrue( len(tv.fields())>0 )
|
||||||
|
Loading…
Reference in New Issue
Block a user