Author: metze Date: 2005-12-02 07:30:34 +0000 (Fri, 02 Dec 2005) New Revision: 12014
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=12014 Log: free the irpc_request structure with the irpc_call_recv functions, to match all other _recv functions we have metze Modified: branches/SAMBA_4_0/source/lib/messaging/messaging.c branches/SAMBA_4_0/source/scripting/ejs/smbcalls_rpc.c branches/SAMBA_4_0/source/torture/local/irpc.c branches/SAMBA_4_0/source/winbind/wb_async_helpers.c branches/SAMBA_4_0/source/winbind/wb_dom_info.c Changeset: Modified: branches/SAMBA_4_0/source/lib/messaging/messaging.c =================================================================== --- branches/SAMBA_4_0/source/lib/messaging/messaging.c 2005-12-02 07:11:43 UTC (rev 12013) +++ branches/SAMBA_4_0/source/lib/messaging/messaging.c 2005-12-02 07:30:34 UTC (rev 12014) @@ -730,13 +730,18 @@ */ NTSTATUS irpc_call_recv(struct irpc_request *irpc) { + NTSTATUS status; + NT_STATUS_HAVE_NO_MEMORY(irpc); + while (!irpc->done) { if (event_loop_once(irpc->msg_ctx->event.ev) != 0) { return NT_STATUS_CONNECTION_DISCONNECTED; - } + } } - return irpc->status; + status = irpc->status; + talloc_free(irpc); + return status; } /* @@ -750,9 +755,7 @@ { struct irpc_request *irpc = irpc_call_send(msg_ctx, server_id, table, callnum, r, mem_ctx); - NTSTATUS status = irpc_call_recv(irpc); - talloc_free(irpc); - return status; + return irpc_call_recv(irpc); } /* Modified: branches/SAMBA_4_0/source/scripting/ejs/smbcalls_rpc.c =================================================================== --- branches/SAMBA_4_0/source/scripting/ejs/smbcalls_rpc.c 2005-12-02 07:11:43 UTC (rev 12013) +++ branches/SAMBA_4_0/source/scripting/ejs/smbcalls_rpc.c 2005-12-02 07:30:34 UTC (rev 12014) @@ -248,7 +248,6 @@ if (!NT_STATUS_IS_OK(status)) { goto done; } - talloc_free(reqs[i]); /* add to the results array */ output = mprGetProperty(io, "output", NULL); Modified: branches/SAMBA_4_0/source/torture/local/irpc.c =================================================================== --- branches/SAMBA_4_0/source/torture/local/irpc.c 2005-12-02 07:11:43 UTC (rev 12013) +++ branches/SAMBA_4_0/source/torture/local/irpc.c 2005-12-02 07:30:34 UTC (rev 12014) @@ -154,7 +154,6 @@ r->in.in_data, *r->out.out_data, r->in.in_data+1); } (*pong_count)++; - talloc_free(irpc); } /* Modified: branches/SAMBA_4_0/source/winbind/wb_async_helpers.c =================================================================== --- branches/SAMBA_4_0/source/winbind/wb_async_helpers.c 2005-12-02 07:11:43 UTC (rev 12013) +++ branches/SAMBA_4_0/source/winbind/wb_async_helpers.c 2005-12-02 07:30:34 UTC (rev 12014) @@ -141,7 +141,6 @@ talloc_get_type(ireq->async.private, struct finddcs_state); state->ctx->status = irpc_call_recv(ireq); - talloc_free(ireq); if (!composite_is_ok(state->ctx)) return; state->dcs[0].name = talloc_steal(state->dcs, state->r.out.dcname); Modified: branches/SAMBA_4_0/source/winbind/wb_dom_info.c =================================================================== --- branches/SAMBA_4_0/source/winbind/wb_dom_info.c 2005-12-02 07:11:43 UTC (rev 12013) +++ branches/SAMBA_4_0/source/winbind/wb_dom_info.c 2005-12-02 07:30:34 UTC (rev 12014) @@ -132,7 +132,6 @@ state->ctx->status = irpc_call_recv(ireq); - talloc_free(ireq); if (!composite_is_ok(state->ctx)) return; state->info->dc_name = talloc_steal(state->info, state->r.out.dcname);
