[0.1.x] updated : set version to 0.1.0.13

git-svn-id: https://pykd.svn.codeplex.com/svn@76402 9b283d60-5439-405e-af05-b73fd8c4d996
This commit is contained in:
SND\kernelnet_cp 2012-05-17 14:24:31 +00:00 committed by Mikhail I. Izmestev
parent 17f8fb721e
commit 4231325aab
6 changed files with 21 additions and 9 deletions

View File

@ -1,3 +1,9 @@
version 0.1.0.13 17/05/2012
[!] fixed : issue #10722 ( rdmsr raises exception )
[!] fixed : issue #10763 ( member derived from different base classes )
[!] fixed : issue #10764 ( typedVar for class does not contain field for vtable )
version 0.1.0.12 24/04/2012
[+] added : get/set load address for DIA global scope

View File

@ -2,7 +2,7 @@
#define PYKD_VERSION_MAJOR 0
#define PYKD_VERSION_MINOR 1
#define PYKD_VERSION_SUBVERSION 0
#define PYKD_VERSION_BUILDNO 12
#define PYKD_VERSION_BUILDNO 13
#define __VER_STR2__(x) #x

View File

@ -18,7 +18,7 @@ def printNdisObj():
ndisMajorVersion = ptrByte( ndis.NdisGetVersion + 1 )
ndisMinorVersion = ptrByte( ndis.NdisGetVersion + 3 )
mpList = typedVarList( ndis.ndisMiniportList, "ndis", "_NDIS_MINIPORT_BLOCK", "NextGlobalMiniport" )
mpList = ndis.typedVarList( ndis.ndisMiniportList, "_NDIS_MINIPORT_BLOCK", "NextGlobalMiniport" )
printBreakLine()
@ -37,7 +37,7 @@ def printNdisObj():
while lwf != 0:
filt = typedVar( "ndis", "_NDIS_FILTER_BLOCK", lwf )
filt = typedVar( "ndis!_NDIS_FILTER_BLOCK", lwf )
dprintln( "%s\t<link cmd=\"dt ndis!_NDIS_FILTER_BLOCK %x\">NDIS_FILTER_BLOCK( %x )</link>" % ( loadUnicodeString(filt.FilterFriendlyName), filt.getAddress(), filt.getAddress() ), True )
@ -51,9 +51,9 @@ def printNdisObj():
while opn != 0:
openBlock = typedVar( "ndis", "_NDIS_OPEN_BLOCK", opn )
openBlock = typedVar( "ndis!_NDIS_OPEN_BLOCK", opn )
proto = typedVar( "ndis", "_NDIS_PROTOCOL_BLOCK", openBlock.ProtocolHandle )
proto = typedVar( "ndis!_NDIS_PROTOCOL_BLOCK", openBlock.ProtocolHandle )
dprint( "%s \t<link cmd=\"dt ndis!_NDIS_OPEN_BLOCK %x\">NDIS_OPEN_BLOCK( %x )</link>" % ( loadUnicodeString( proto.Name.getAddress() ), openBlock.getAddress(), openBlock.getAddress() ), True )
dprintln( "\t<link cmd=\"dt ndis!_NDIS_PROTOCOL_BLOCK %x\">NDIS_PROTOCOL_BLOCK( %x )</link>" % ( proto.getAddress(), proto.getAddress() ), True )

View File

@ -237,11 +237,16 @@ class TypedVarTest( unittest.TestCase ):
self.assertTrue( str(target.module.typedVar( "g_unTypedPtrToFunction" ) ) )
def testStaticField(self):
ti = pykd.typedVar( "g_classChild" )
self.assertEqual( 200, ti.m_staticField )
self.assertEqual( 100, ti.m_staticConst )
tv = pykd.typedVar( "g_classChild" )
self.assertEqual( 200, tv.m_staticField )
self.assertEqual( 100, tv.m_staticConst )
def testAmbiguousFieldAccess(self):
derivedFiledVal = pykd.loadCStr( pykd.typedVar( "g_fieldSameNameStruct" ).m_field )
self.assertEqual( derivedFiledVal, "toaster" )
print target.module.type("fieldSameNameStruct")
def testDiamondVirtualInherit(self):
tv = pykd.typedVar( "g_virtChild" )
print tv
self.assertEqual( -100, tv.m_baseField )

View File

@ -184,3 +184,4 @@ class TypeInfoTest( unittest.TestCase ):
self.assertNotEqual( 0, ti.m_staticField.offset() )
self.assertNotEqual( 0, ti.m_staticConst.offset() )
self.assertNotEqual( 0, ti.m_stdstr.offset() )

View File

@ -335,7 +335,7 @@ public:
virtual void virtFunc2() {}
};
class VirtualChildClass : public VirtualBaseClass1, public VirtualBaseClass2
class VirtualChildClass : public VirtualBaseClass1, public VirtualBaseClass2, public virtual classBase
{
void virtFunc() {}
void virtFunc2() {}