From 264200e128e3fe63788ebefc5b80788aa544b446 Mon Sep 17 00:00:00 2001 From: pk910 Date: Wed, 14 Dec 2011 16:44:12 +0100 Subject: [PATCH] fixed cmd_register and cmd_unregister for "zero-bot" support --- src/cmd_global_register.c | 2 +- src/cmd_global_unregister.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/cmd_global_register.c b/src/cmd_global_register.c index a0c4258..b22fc58 100644 --- a/src/cmd_global_register.c +++ b/src/cmd_global_register.c @@ -50,7 +50,7 @@ CMD_BIND(global_cmd_register) { printf_mysql_query("SELECT `botid`, `botclass` FROM `bot_channels` LEFT JOIN `bots` ON `bot_channels`.`botid` = `bots`.`id` LEFT JOIN `channels` ON `bot_channels`.`chanid` = `channels`.`channel_id` WHERE `channel_name` = '%s'", escape_string(channel)); res = mysql_use(); while ((row = mysql_fetch_row(res)) != NULL) { - if(atoi(row[1]) == client->botid) { + if(atoi(row[1]) == client->botid && (client->botid || client->clientid == atoi(row[0]))) { reply(getTextBot(), user, "NS_REGISTER_ALREADY", argv[0], client->user->nick); return; } else diff --git a/src/cmd_global_unregister.c b/src/cmd_global_unregister.c index 99669af..ca36363 100644 --- a/src/cmd_global_unregister.c +++ b/src/cmd_global_unregister.c @@ -37,7 +37,10 @@ CMD_BIND(global_cmd_unregister) { reply(getTextBot(), user, "NS_UNREGISTER_NOT_REGISTERED", argv[0], client->user->nick); return; } - printf_mysql_query("SELECT `botid`, `bot_channels`.`id`, `suspended` FROM `bot_channels` LEFT JOIN `bots` ON `bot_channels`.`botid` = `bots`.`id` WHERE `chanid` = '%d' AND `botclass` = '%d'", chanid, client->botid); + if(client->botid == 0) + printf_mysql_query("SELECT `botid`, `bot_channels`.`id`, `suspended` FROM `bot_channels` LEFT JOIN `bots` ON `bot_channels`.`botid` = `bots`.`id` WHERE `chanid` = '%d' AND `botclass` = '0' AND `botid` = '%d'", chanid, client->clientid); + else + printf_mysql_query("SELECT `botid`, `bot_channels`.`id`, `suspended` FROM `bot_channels` LEFT JOIN `bots` ON `bot_channels`.`botid` = `bots`.`id` WHERE `chanid` = '%d' AND `botclass` = '%d'", chanid, client->botid); res = mysql_use(); if ((row = mysql_fetch_row(res)) == NULL) { reply(getTextBot(), user, "NS_UNREGISTER_NOT_REGISTERED", argv[0], client->user->nick); -- 2.20.1