Log: Ove Kaaven <ovek@transgaming.com> Fixed a bug in CompleteBindingA/W. Index: dlls/rpcrt4/rpc_binding.c =================================================================== RCS file: /home/wine/wine/dlls/rpcrt4/rpc_binding.c,v retrieving revision 1.9 diff -u -r1.9 rpc_binding.c --- dlls/rpcrt4/rpc_binding.c 24 Dec 2002 00:26:55 -0000 1.9 +++ dlls/rpcrt4/rpc_binding.c 30 Jan 2003 16:19:16 -0000 @@ -137,35 +137,38 @@ RPCRT4_strfree(Binding->NetworkAddr); Binding->NetworkAddr = RPCRT4_strdupA(NetworkAddr); RPCRT4_strfree(Binding->Endpoint); - if (Binding->Endpoint) { + if (Endpoint) { Binding->Endpoint = RPCRT4_strdupA(Endpoint); } else { Binding->Endpoint = RPCRT4_strdupA(""); } + if (!Binding->Endpoint) ERR("out of memory?\n"); return RPC_S_OK; } RPC_STATUS RPCRT4_CompleteBindingW(RpcBinding* Binding, LPWSTR NetworkAddr, LPWSTR Endpoint, LPWSTR NetworkOptions) { - TRACE("(RpcBinding == ^%p, NetworkAddr == \"%s\", EndPoint == \"%s\", NetworkOptions == \"%s\")\n", Binding, debugstr_w(NetworkAddr), debugstr_w(Endpoint), debugstr_w(NetworkOptions)); RPCRT4_strfree(Binding->NetworkAddr); Binding->NetworkAddr = RPCRT4_strdupWtoA(NetworkAddr); RPCRT4_strfree(Binding->Endpoint); - if (Binding->Endpoint) { + if (Endpoint) { Binding->Endpoint = RPCRT4_strdupWtoA(Endpoint); } else { Binding->Endpoint = RPCRT4_strdupA(""); } + if (!Binding->Endpoint) ERR("out of memory?\n"); return RPC_S_OK; } RPC_STATUS RPCRT4_ResolveBinding(RpcBinding* Binding, LPSTR Endpoint) { + TRACE("(RpcBinding == ^%p, EndPoint == \"%s\"\n", Binding, Endpoint); + RPCRT4_strfree(Binding->Endpoint); Binding->Endpoint = RPCRT4_strdupA(Endpoint);