2009/1/21 Hans Leidekker <h...@codeweavers.com>: > > diff --git a/dlls/rpcrt4/rpcrt4.spec b/dlls/rpcrt4/rpcrt4.spec > index 2c86e68..56a55f6 100644 > --- a/dlls/rpcrt4/rpcrt4.spec > +++ b/dlls/rpcrt4/rpcrt4.spec > @@ -203,7 +203,7 @@ > @ stub NdrGetSimpleTypeBufferSize # wxp > @ stub NdrGetSimpleTypeMemorySize # wxp > @ stub NdrGetTypeFlags # wxp > -@ stub NdrGetUserMarshallInfo > +@ stdcall NdrGetUserMarshalInfo(ptr long ptr) > @ stub NdrHardStructBufferSize #(ptr ptr ptr) > @ stub NdrHardStructFree #(ptr ptr ptr) > @ stub NdrHardStructMarshall #(ptr ptr ptr) > diff --git a/dlls/rpcrt4/rpcrt4_main.c b/dlls/rpcrt4/rpcrt4_main.c > index 537a005..1a6b61d 100644 > --- a/dlls/rpcrt4/rpcrt4_main.c > +++ b/dlls/rpcrt4/rpcrt4_main.c > @@ -1016,3 +1016,9 @@ RPC_STATUS RPC_ENTRY RpcCancelThreadEx(void* > ThreadHandle, LONG Timeout) > else > return rpc_cancel_thread(target_tid); > } > + > +RPC_STATUS RPC_ENTRY NdrGetUserMarshalInfo(ULONG *flags, ULONG level, > NDR_USER_MARSHAL_INFO *mi) > +{ > + FIXME("(%p, %u, %p)\n", flags, level, mi); > + return RPC_X_INVALID_BUFFER; > +}
Since this function has the prefix Ndr it should go in an ndr_*.c file in rpcrt4, not one of the others (I would suggest ndr_marshall.c next to the user marshal functions, which initialise the data structure that it operates on). It also lacking a winapi comment. -- Rob Shearman