1
0
mirror of https://github.com/weechat/weechat.git synced 2026-07-03 00:03:12 +02:00

Fixed /quit command with arg and %v

This commit is contained in:
Sebastien Helleu
2005-01-09 12:03:07 +00:00
parent 64601fc662
commit 555999534e
2 changed files with 32 additions and 38 deletions
+16 -19
View File
@@ -997,39 +997,36 @@ int
irc_cmd_send_quit (t_irc_server *server, char *arguments)
{
t_irc_server *ptr_server;
char *pos, buffer[4096];
char *ptr_arg, *pos, buffer[4096];
/* make gcc happy */
(void) server;
ptr_arg = (arguments) ? arguments :
(cfg_irc_default_msg_quit && cfg_irc_default_msg_quit[0]) ?
cfg_irc_default_msg_quit : NULL;
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
if (ptr_server->is_connected)
{
if (arguments)
server_sendf (ptr_server, "QUIT :%s\r\n", arguments);
else
if (ptr_arg)
{
if (cfg_irc_default_msg_quit && cfg_irc_default_msg_quit[0])
pos = strstr (ptr_arg, "%v");
if (pos)
{
pos = strstr (cfg_irc_default_msg_quit, "%v");
if (pos)
{
pos[0] = '\0';
snprintf (buffer, sizeof (buffer), "%s%s%s",
cfg_irc_default_msg_quit, PACKAGE_VERSION,
pos + 2);
pos[0] = '%';
}
else
snprintf (buffer, sizeof (buffer), "%s",
cfg_irc_default_msg_quit);
server_sendf (ptr_server, "QUIT :%s\r\n", buffer);
pos[0] = '\0';
snprintf (buffer, sizeof (buffer), "%s%s%s",
ptr_arg, PACKAGE_VERSION, pos + 2);
pos[0] = '%';
}
else
server_sendf (ptr_server, "QUIT\r\n");
snprintf (buffer, sizeof (buffer), "%s",
ptr_arg);
server_sendf (ptr_server, "QUIT :%s\r\n", buffer);
}
else
server_sendf (ptr_server, "QUIT\r\n");
}
}
quit_weechat = 1;
+16 -19
View File
@@ -997,39 +997,36 @@ int
irc_cmd_send_quit (t_irc_server *server, char *arguments)
{
t_irc_server *ptr_server;
char *pos, buffer[4096];
char *ptr_arg, *pos, buffer[4096];
/* make gcc happy */
(void) server;
ptr_arg = (arguments) ? arguments :
(cfg_irc_default_msg_quit && cfg_irc_default_msg_quit[0]) ?
cfg_irc_default_msg_quit : NULL;
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
if (ptr_server->is_connected)
{
if (arguments)
server_sendf (ptr_server, "QUIT :%s\r\n", arguments);
else
if (ptr_arg)
{
if (cfg_irc_default_msg_quit && cfg_irc_default_msg_quit[0])
pos = strstr (ptr_arg, "%v");
if (pos)
{
pos = strstr (cfg_irc_default_msg_quit, "%v");
if (pos)
{
pos[0] = '\0';
snprintf (buffer, sizeof (buffer), "%s%s%s",
cfg_irc_default_msg_quit, PACKAGE_VERSION,
pos + 2);
pos[0] = '%';
}
else
snprintf (buffer, sizeof (buffer), "%s",
cfg_irc_default_msg_quit);
server_sendf (ptr_server, "QUIT :%s\r\n", buffer);
pos[0] = '\0';
snprintf (buffer, sizeof (buffer), "%s%s%s",
ptr_arg, PACKAGE_VERSION, pos + 2);
pos[0] = '%';
}
else
server_sendf (ptr_server, "QUIT\r\n");
snprintf (buffer, sizeof (buffer), "%s",
ptr_arg);
server_sendf (ptr_server, "QUIT :%s\r\n", buffer);
}
else
server_sendf (ptr_server, "QUIT\r\n");
}
}
quit_weechat = 1;