Rob Shearman : rpcrt4: Fix the pointer level being passed into call_unmarshaller in client_do_args_old_format for base return parameters .

Alexandre Julliard julliard at winehq.org
Mon Mar 10 17:05:15 CDT 2008


Module: wine
Branch: master
Commit: 0e7b25349d9c711d6d99d51ebaef826986674193
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=0e7b25349d9c711d6d99d51ebaef826986674193

Author: Rob Shearman <rob at codeweavers.com>
Date:   Mon Mar 10 17:24:49 2008 +0000

rpcrt4: Fix the pointer level being passed into call_unmarshaller in client_do_args_old_format for base return parameters.

NdrBaseTypeUnmarshall expects a pointer to a pointer to a base type. 
pRetVal contains a pointer to a base type, so we need to pass the 
address of pRetVal into call_unmarshaller here.

---

 dlls/rpcrt4/ndr_stubless.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/dlls/rpcrt4/ndr_stubless.c b/dlls/rpcrt4/ndr_stubless.c
index 69347b2..347db48 100644
--- a/dlls/rpcrt4/ndr_stubless.c
+++ b/dlls/rpcrt4/ndr_stubless.c
@@ -493,7 +493,7 @@ static void client_do_args_old_format(PMIDL_STUB_MESSAGE pStubMsg,
                 if (pParam->param_direction == RPC_FC_RETURN_PARAM_BASETYPE)
                 {
                     if (pParam->param_direction & RPC_FC_RETURN_PARAM)
-                        call_unmarshaller(pStubMsg, (unsigned char **)pRetVal, pTypeFormat, 0);
+                        call_unmarshaller(pStubMsg, &pRetVal, pTypeFormat, 0);
                     else
                         call_unmarshaller(pStubMsg, &pArg, pTypeFormat, 0);
                 }




More information about the wine-cvs mailing list