[srvx-bugs] [ srvx-Bugs-2649505 ] Helper looses +g, although a clone is still in a supportchan
Brought to you by:
entrope
From: SourceForge.net <no...@so...> - 2009-02-28 19:52:58
|
Bugs item #2649505, was opened at 2009-02-28 20:52 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=403001&aid=2649505&group_id=31654 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: ChanServ Group: 1.4 Status: Open Resolution: None Priority: 5 Private: No Submitted By: David Herrmann (dvdhrm) Assigned to: Zoot (zoot) Summary: Helper looses +g, although a clone is still in a supportchan Initial Comment: An helper account with +h is with two nicks in an helper chan and has +g. One of these nicks leaves the channel and the account gets +g removed, although, there is still an helper with this account in the channel. There is a simple fix for this bug by modifying handle_part in chanserv.c. The following diff is done on a clean srvx-1.4.0-rc3 srvx source: diff -r -u srvx-1.4.0-rc3/src/chanserv.c srvx-1.4.0-rc3-fixed/src/chanserv.c --- srvx-1.4.0-rc3/src/chanserv.c 2008-07-12 05:49:09.000000000 +0200 +++ srvx-1.4.0-rc3-fixed/src/chanserv.c 2009-02-28 20:46:40.000000000 +0100 @@ -6692,10 +6692,7 @@ unsigned int ii, jj; for(ii = 0; ii < chanserv_conf.support_channels.used; ++ii) { - for(jj = 0; jj < mn->user->channels.used; ++jj) - if(mn->user->channels.list[jj]->channel == chanserv_conf.support_channels.list[ii]) - break; - if(jj < mn->user->channels.used) + if(find_handle_in_channel(chanserv_conf.support_channels.list[ii], mn->user->handle_info, NULL)) break; } if(ii == chanserv_conf.support_channels.used) ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=403001&aid=2649505&group_id=31654 |