[PATCH 1/5] rpcrt4: Initialize CorrDespIncrement to zero and mark the pre-Vista behaviour as broken.

Huw Davies huw at codeweavers.com
Mon Jul 13 06:49:07 CDT 2015


---
 dlls/rpcrt4/ndr_clientserver.c   | 1 +
 dlls/rpcrt4/tests/ndr_marshall.c | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/dlls/rpcrt4/ndr_clientserver.c b/dlls/rpcrt4/ndr_clientserver.c
index 502faa1..66fe33b 100644
--- a/dlls/rpcrt4/ndr_clientserver.c
+++ b/dlls/rpcrt4/ndr_clientserver.c
@@ -120,6 +120,7 @@ unsigned char* WINAPI NdrServerInitializeNew( PRPC_MESSAGE pRpcMsg, PMIDL_STUB_M
   pStubMsg->pPointerQueueState = NULL;
   pStubMsg->IgnoreEmbeddedPointers = 0;
   pStubMsg->PointerBufferMark = NULL;
+  pStubMsg->CorrDespIncrement = 0;
   pStubMsg->uFlags = 0;
   pStubMsg->UniquePtrCount = 0;
   pStubMsg->pfnAllocate = pStubDesc->pfnAllocate;
diff --git a/dlls/rpcrt4/tests/ndr_marshall.c b/dlls/rpcrt4/tests/ndr_marshall.c
index 411ba8b..a9c16b2 100644
--- a/dlls/rpcrt4/tests/ndr_marshall.c
+++ b/dlls/rpcrt4/tests/ndr_marshall.c
@@ -1320,9 +1320,9 @@ todo_wine
     ok(stubMsg.ReuseBuffer == 0 ||
        broken(stubMsg.ReuseBuffer == 1), /* win2k */
        "stubMsg.ReuseBuffer should have been set to zero instead of %d\n", stubMsg.ReuseBuffer);
-    ok(stubMsg.CorrDespIncrement == 0xcc ||
-       stubMsg.CorrDespIncrement == 0,
-       "CorrDespIncrement should have been unset instead of 0x%x\n", stubMsg.CorrDespIncrement);
+    ok(stubMsg.CorrDespIncrement == 0 ||
+       broken(stubMsg.CorrDespIncrement == 0xcc), /* <= Win 2003 */
+       "CorrDespIncrement should have been set to zero instead of 0x%x\n", stubMsg.CorrDespIncrement);
     ok(stubMsg.FullPtrXlatTables == 0, "stubMsg.BufferLength should have been 0 instead of %p\n", stubMsg.FullPtrXlatTables);
 }
 
-- 
1.8.0




More information about the wine-patches mailing list