X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=wrappers%2Fd3d9trace.py;h=ef5a14c6f436aacdab461f6622af0bbfc85eacbd;hb=93fa73af855d48fbd95ed50930bdb8ec50602ed6;hp=dbace8fe54ffc07ebaeca84f70f69a46803becf4;hpb=6d5372b819f636f36b6390158a1ccacb4ca95c28;p=apitrace diff --git a/wrappers/d3d9trace.py b/wrappers/d3d9trace.py index dbace8f..ef5a14c 100644 --- a/wrappers/d3d9trace.py +++ b/wrappers/d3d9trace.py @@ -42,20 +42,21 @@ class D3D9Tracer(DllTracer): DllTracer.declareWrapperInterfaceVariables(self, interface) if interface.getMethodByName('Lock') is not None or \ - interface.getMethodByName('LockRect') is not None: + interface.getMethodByName('LockRect') is not None or \ + interface.getMethodByName('LockBox') is not None: print ' size_t _LockedSize;' print ' VOID *m_pbData;' def implementWrapperInterfaceMethodBody(self, interface, base, method): - if method.name in ('Unlock', 'UnlockRect'): + if method.name in ('Unlock', 'UnlockRect', 'UnlockBox'): print ' if (m_pbData) {' self.emit_memcpy('(LPBYTE)m_pbData', '(LPBYTE)m_pbData', '_LockedSize') print ' }' DllTracer.implementWrapperInterfaceMethodBody(self, interface, base, method) - if method.name in ('Lock', 'LockRect'): + if method.name in ('Lock', 'LockRect', 'LockedBox'): print ' if (SUCCEEDED(_result) && !(Flags & D3DLOCK_READONLY)) {' print ' _LockedSize = _getLockSize(_this, %s);' % ', '.join(method.argNames()[:-1]) if method.name == 'Lock': @@ -63,6 +64,8 @@ class D3D9Tracer(DllTracer): print ' m_pbData = *ppbData;' elif method.name == 'LockRect': print ' m_pbData = pLockedRect->pBits;' + elif method.name == 'LockBox': + print ' m_pbData = pLockedBox->pBits;' else: raise NotImplementedError print ' } else {'