Module: wine Branch: refs/heads/master Commit: e26bcb7fb2a0f2396b03cb854f360f474b10ace9 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=e26bcb7fb2a0f2396b03cb85...
Author: Robert Shearman rob@codeweavers.com Date: Wed Aug 9 18:16:21 2006 +0100
rpcrt4: Complex types should be dereferenced an extra time in the old format stubless code.
---
dlls/rpcrt4/ndr_stubless.c | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/dlls/rpcrt4/ndr_stubless.c b/dlls/rpcrt4/ndr_stubless.c index e7c54e3..55a7778 100644 --- a/dlls/rpcrt4/ndr_stubless.c +++ b/dlls/rpcrt4/ndr_stubless.c @@ -898,17 +898,17 @@ #endif case PROXY_CALCSIZE: if (pParam->param_direction == RPC_FC_IN_PARAM || pParam->param_direction & RPC_FC_IN_OUT_PARAM) - call_buffer_sizer(&stubMsg, pArg, pTypeFormat); + call_buffer_sizer(&stubMsg, *(unsigned char **)pArg, pTypeFormat); break; case PROXY_MARSHAL: if (pParam->param_direction == RPC_FC_IN_PARAM || pParam->param_direction & RPC_FC_IN_OUT_PARAM) - call_marshaller(&stubMsg, pArg, pTypeFormat); + call_marshaller(&stubMsg, *(unsigned char **)pArg, pTypeFormat); break; case PROXY_UNMARSHAL: if (pParam->param_direction == RPC_FC_IN_OUT_PARAM || pParam->param_direction == RPC_FC_OUT_PARAM) - call_unmarshaller(&stubMsg, &pArg, pTypeFormat, 0); + call_unmarshaller(&stubMsg, (unsigned char **)pArg, pTypeFormat, 0); else if (pParam->param_direction == RPC_FC_RETURN_PARAM) call_unmarshaller(&stubMsg, (unsigned char **)&RetVal, pTypeFormat, 0); break; @@ -1483,18 +1483,18 @@ #endif if (pParam->param_direction == RPC_FC_OUT_PARAM || pParam->param_direction == RPC_FC_IN_OUT_PARAM || pParam->param_direction == RPC_FC_RETURN_PARAM) - call_marshaller(&stubMsg, pArg, pTypeFormat); + call_marshaller(&stubMsg, *(unsigned char **)pArg, pTypeFormat); break; case STUBLESS_UNMARSHAL: if (pParam->param_direction == RPC_FC_IN_OUT_PARAM || pParam->param_direction == RPC_FC_IN_PARAM) - call_unmarshaller(&stubMsg, &pArg, pTypeFormat, 0); + call_unmarshaller(&stubMsg, (unsigned char **)pArg, pTypeFormat, 0); break; case STUBLESS_CALCSIZE: if (pParam->param_direction == RPC_FC_OUT_PARAM || pParam->param_direction == RPC_FC_IN_OUT_PARAM || pParam->param_direction == RPC_FC_RETURN_PARAM) - call_buffer_sizer(&stubMsg, pArg, pTypeFormat); + call_buffer_sizer(&stubMsg, *(unsigned char **)pArg, pTypeFormat); break; default: RpcRaiseException(RPC_S_INTERNAL_ERROR);