Author: mimir Date: 2006-06-22 21:29:21 +0000 (Thu, 22 Jun 2006) New Revision: 16476
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=16476 Log: Error in composite functions implemented the 'old way' (single event handler, no continue functions) need to report an error by means of state only. composite_error calls event handler function which frees the context and state structure. This fixes a segfault in some cases (caught it on modifyuser test). rafal Modified: branches/SAMBA_4_0/source/libnet/userman.c Changeset: Modified: branches/SAMBA_4_0/source/libnet/userman.c =================================================================== --- branches/SAMBA_4_0/source/libnet/userman.c 2006-06-22 20:33:42 UTC (rev 16475) +++ branches/SAMBA_4_0/source/libnet/userman.c 2006-06-22 21:29:21 UTC (rev 16476) @@ -519,11 +519,13 @@ and what if there's more than one rid resolved */ if (!s->lookupname.out.rids.count) { c->status = NT_STATUS_NO_SUCH_USER; - composite_error(c, c->status); + c->state = COMPOSITE_STATE_ERROR; + return c->status; } else if (!s->lookupname.out.rids.count > 1) { c->status = NT_STATUS_INVALID_ACCOUNT_NAME; - composite_error(c, c->status); + c->state = COMPOSITE_STATE_ERROR; + return c->status; } /* prepare the next rpc call */
