From a21fc7524b571c96a4526fcde377e3c5d5099d57 Mon Sep 17 00:00:00 2001 From: pk910 Date: Thu, 7 Jul 2011 22:01:59 +0200 Subject: [PATCH] only give users +ov if they have UserAutoOp enabled on cmd_resync --- src/chanserv.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/chanserv.c b/src/chanserv.c index 065f459..f04c3fb 100644 --- a/src/chanserv.c +++ b/src/chanserv.c @@ -4830,8 +4830,16 @@ static CHANSERV_FUNC(cmd_resync) { if(!(mn->modes & MODE_CHANOP)) { - changes->args[used].mode = MODE_CHANOP; - changes->args[used++].u.member = mn; + if(!uData || IsUserAutoOp(uData)) + { + changes->args[used].mode = MODE_CHANOP; + changes->args[used++].u.member = mn; + if(!(mn->modes & MODE_VOICE)) + { + changes->args[used].mode = MODE_VOICE; + changes->args[used++].u.member = mn; + } + } } } else if(!cData->lvlOpts[lvlGiveVoice] @@ -4842,7 +4850,7 @@ static CHANSERV_FUNC(cmd_resync) changes->args[used].mode = MODE_REMOVE | (mn->modes & ~MODE_VOICE); changes->args[used++].u.member = mn; } - if(!(mn->modes & MODE_VOICE)) + if(!(mn->modes & MODE_VOICE) && (!uData || IsUserAutoOp(uData))) { changes->args[used].mode = MODE_VOICE; changes->args[used++].u.member = mn; -- 2.20.1