Module: wine Branch: master Commit: 4f247d3130b1a9299ecb20cd7bcac26f4e7b83c1 URL: http://source.winehq.org/git/wine.git/?a=commit;h=4f247d3130b1a9299ecb20cd7b...
Author: Alexandre Julliard julliard@winehq.org Date: Fri Jun 17 14:11:12 2011 +0200
rpcrt4: Add support for 64-bit conformance values.
---
dlls/rpcrt4/ndr_marshall.c | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/dlls/rpcrt4/ndr_marshall.c b/dlls/rpcrt4/ndr_marshall.c index c62675d..85d0a3c 100644 --- a/dlls/rpcrt4/ndr_marshall.c +++ b/dlls/rpcrt4/ndr_marshall.c @@ -536,7 +536,7 @@ PFORMAT_STRING ComputeConformanceOrVariance( BYTE dtype = pFormat[0] & 0xf; short ofs = *(const short *)&pFormat[2]; LPVOID ptr = NULL; - DWORD data = 0; + ULONG_PTR data = 0;
if (!IsConformanceOrVariancePresent(pFormat)) { /* null descriptor */ @@ -565,7 +565,7 @@ PFORMAT_STRING ComputeConformanceOrVariance( break; case RPC_FC_CONSTANT_CONFORMANCE: data = ofs | ((DWORD)pFormat[1] << 16); - TRACE("constant conformance, val=%d\n", data); + TRACE("constant conformance, val=%ld\n", data); *pCount = data; goto finish_conf; case RPC_FC_TOP_LEVEL_MULTID_CONFORMANCE: @@ -630,11 +630,14 @@ PFORMAT_STRING ComputeConformanceOrVariance( case RPC_FC_USMALL: data = *(UCHAR*)ptr; break; + case RPC_FC_HYPER: + data = *(ULONGLONG *)ptr; + break; default: FIXME("unknown conformance data type %x\n", dtype); goto done_conf_grab; } - TRACE("dereferenced data type %x at %p, got %d\n", dtype, ptr, data); + TRACE("dereferenced data type %x at %p, got %ld\n", dtype, ptr, data);
done_conf_grab: switch (pFormat[1]) {