From 4d4a0345671424fa9fd215525bf52dc35a618367 Mon Sep 17 00:00:00 2001 From: Sebastien Helleu Date: Thu, 9 Dec 2010 19:42:45 +0100 Subject: [PATCH] Allow /reconnect on servers that are not currently connected --- po/cs.po | 2 +- po/de.po | 2 +- po/es.po | 2 +- po/fr.po | 52 ++--------------------------------- po/hu.po | 2 +- po/it.po | 2 +- po/pl.po | 2 +- po/pt_BR.po | 2 +- po/ru.po | 2 +- po/weechat.pot | 2 +- src/plugins/irc/irc-command.c | 28 ++++++++----------- 11 files changed, 22 insertions(+), 76 deletions(-) diff --git a/po/cs.po b/po/cs.po index 3d4d7ab0d..7d2da69d9 100644 --- a/po/cs.po +++ b/po/cs.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.4-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-12-07 19:35+0100\n" +"POT-Creation-Date: 2010-12-09 19:36+0100\n" "PO-Revision-Date: 2010-11-06 11:55+0100\n" "Last-Translator: Jiri Golembiovsky \n" "Language-Team: weechat-dev \n" diff --git a/po/de.po b/po/de.po index 47482a35a..b057dc031 100644 --- a/po/de.po +++ b/po/de.po @@ -22,7 +22,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.3-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-12-07 19:35+0100\n" +"POT-Creation-Date: 2010-12-09 19:36+0100\n" "PO-Revision-Date: 2010-12-07 23:21+0100\n" "Last-Translator: Nils G.\n" "Language-Team: weechat-dev \n" diff --git a/po/es.po b/po/es.po index 76967c79f..4e393851c 100644 --- a/po/es.po +++ b/po/es.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.4-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-12-07 19:35+0100\n" +"POT-Creation-Date: 2010-12-09 19:36+0100\n" "PO-Revision-Date: 2010-11-06 11:56+0100\n" "Last-Translator: Elián Hanisch \n" "Language-Team: weechat-dev \n" diff --git a/po/fr.po b/po/fr.po index 85c7d5aee..8303d6eb4 100644 --- a/po/fr.po +++ b/po/fr.po @@ -21,8 +21,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.4-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-12-07 19:35+0100\n" -"PO-Revision-Date: 2010-12-07 08:39+0100\n" +"POT-Creation-Date: 2010-12-09 19:36+0100\n" +"PO-Revision-Date: 2010-12-09 19:32+0100\n" "Last-Translator: Sebastien Helleu \n" "Language-Team: weechat-dev \n" "Language: French\n" @@ -7333,51 +7333,3 @@ msgstr "Hashtable (sortie)" msgid "Pointer" msgstr "Pointeur" - -#~ msgid "" -#~ "time format for each line displayed in buffers (see man strftime for date/" -#~ "time specifiers)" -#~ msgstr "" -#~ "format de date/heure pour chaque ligne affichée dans les tampons (voir " -#~ "man strftime pour le format de date/heure)" - -#~ msgid "[-server server] receiver[,receiver] text" -#~ msgstr "[-server serveur] cible[,cible] texte" - -#~ msgid "[-server server] nickname text" -#~ msgstr "[-server serveur] pseudo texte" - -#~ msgid "" -#~ " server: send to this server (internal name)\n" -#~ "nickname: user to send notice to\n" -#~ " text: text to send" -#~ msgstr "" -#~ "serveur: envoyer à ce serveur (nom interne)\n" -#~ " pseudo: pseudo cible pour la notice\n" -#~ " texte: texte à envoyer" - -#~ msgid "items of bar" -#~ msgstr "objets de la barre" - -#~ msgid "time format for each line displayed in buffers" -#~ msgstr "format de date/heure pour chaque ligne affichée dans les tampons" - -#~ msgid "time format for \"time\" bar item" -#~ msgstr "format de date/heure pour l'objet de barre \"time\"" - -#~ msgid "file containing the certificate authorities" -#~ msgstr "fichier contenant les autorités de certification" - -#~ msgid "ssl certificate file used to automatically identify your nick" -#~ msgstr "" -#~ "fichier de certificat ssl utilisé pour identifier automatiquement votre " -#~ "pseudo" - -#~ msgid "path for writing incoming files" -#~ msgstr "chemin où écrire les fichiers reçus" - -#~ msgid "" -#~ "path for reading files when sending (when no path is specified by user)" -#~ msgstr "" -#~ "chemin pour lire les fichiers envoyés (quand aucun chemin n'est spécifié " -#~ "par l'utilisateur)" diff --git a/po/hu.po b/po/hu.po index b8e99a066..fd6da4c3c 100644 --- a/po/hu.po +++ b/po/hu.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.4-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-12-07 19:35+0100\n" +"POT-Creation-Date: 2010-12-09 19:36+0100\n" "PO-Revision-Date: 2010-11-05 17:17+0100\n" "Last-Translator: Andras Voroskoi \n" "Language-Team: weechat-dev \n" diff --git a/po/it.po b/po/it.po index 25ec97780..e3906a3e2 100644 --- a/po/it.po +++ b/po/it.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.4-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-12-07 19:35+0100\n" +"POT-Creation-Date: 2010-12-09 19:36+0100\n" "PO-Revision-Date: 2010-12-04 11:57+0100\n" "Last-Translator: Marco Paolone \n" "Language-Team: weechat-dev \n" diff --git a/po/pl.po b/po/pl.po index 905735332..272a9b754 100644 --- a/po/pl.po +++ b/po/pl.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.4-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-12-07 19:35+0100\n" +"POT-Creation-Date: 2010-12-09 19:36+0100\n" "PO-Revision-Date: 2010-11-06 11:56+0100\n" "Last-Translator: Krzysztof Koroscik \n" "Language-Team: weechat-dev \n" diff --git a/po/pt_BR.po b/po/pt_BR.po index 0a64a281e..c8b074184 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.4-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-12-07 19:35+0100\n" +"POT-Creation-Date: 2010-12-09 19:36+0100\n" "PO-Revision-Date: 2010-11-13 09:26+0100\n" "Last-Translator: Ivan Sichmann Freitas \n" "Language-Team: weechat-dev \n" diff --git a/po/ru.po b/po/ru.po index 8e21f6a1a..1b55a0dfa 100644 --- a/po/ru.po +++ b/po/ru.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.4-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-12-07 19:35+0100\n" +"POT-Creation-Date: 2010-12-09 19:36+0100\n" "PO-Revision-Date: 2010-11-05 17:17+0100\n" "Last-Translator: Pavel Shevchuk \n" "Language-Team: weechat-dev \n" diff --git a/po/weechat.pot b/po/weechat.pot index 4fa85a851..4e768855b 100644 --- a/po/weechat.pot +++ b/po/weechat.pot @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-12-07 19:35+0100\n" +"POT-Creation-Date: 2010-12-09 19:36+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/src/plugins/irc/irc-command.c b/src/plugins/irc/irc-command.c index 549abf287..ed33f21fe 100644 --- a/src/plugins/irc/irc-command.c +++ b/src/plugins/irc/irc-command.c @@ -3149,18 +3149,15 @@ irc_command_reconnect_one_server (struct t_irc_server *server, int no_join) if (!server) return 0; - if ((!server->is_connected) && (!server->hook_connect) - && (!server->hook_fd)) + if ((server->is_connected) || (server->hook_connect) || (server->hook_fd)) { - weechat_printf (server->buffer, - _("%s%s: not connected to server \"%s\"!"), - weechat_prefix ("error"), IRC_PLUGIN_NAME, - server->name); - return 0; + /* disconnect from server */ + irc_command_quit_server (server, NULL); + irc_server_disconnect (server, 0, 0); } - irc_command_quit_server (server, NULL); - irc_server_disconnect (server, 0, 0); + server->disable_autojoin = no_join; + if (irc_server_connect (server)) { server->reconnect_delay = 0; @@ -3181,14 +3178,13 @@ irc_command_reconnect (void *data, struct t_gui_buffer *buffer, int argc, char **argv, char **argv_eol) { int i, nb_reconnect, reconnect_ok, all_servers, no_join; - + IRC_BUFFER_GET_SERVER(buffer); /* make C compiler happy */ (void) data; (void) argv_eol; - nb_reconnect = 0; reconnect_ok = 1; all_servers = 0; @@ -3206,9 +3202,7 @@ irc_command_reconnect (void *data, struct t_gui_buffer *buffer, int argc, for (ptr_server = irc_servers; ptr_server; ptr_server = ptr_server->next_server) { - nb_reconnect++; - if ((ptr_server->is_connected) || (ptr_server->hook_connect) - || (ptr_server->hook_fd)) + if (ptr_server->buffer) { if (!irc_command_reconnect_one_server (ptr_server, no_join)) reconnect_ok = 0; @@ -3217,6 +3211,7 @@ irc_command_reconnect (void *data, struct t_gui_buffer *buffer, int argc, } else { + nb_reconnect = 0; for (i = 1; i < argc; i++) { if (argv[i][0] != '-') @@ -3238,11 +3233,10 @@ irc_command_reconnect (void *data, struct t_gui_buffer *buffer, int argc, } } } + if (nb_reconnect == 0) + reconnect_ok = irc_command_reconnect_one_server (ptr_server, no_join); } - if (nb_reconnect == 0) - reconnect_ok = irc_command_reconnect_one_server (ptr_server, no_join); - if (!reconnect_ok) return WEECHAT_RC_ERROR;