summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--doc/de/autogen/user/irc_options.txt2
-rw-r--r--doc/en/autogen/user/irc_options.txt2
-rw-r--r--doc/fr/autogen/user/irc_options.txt2
-rw-r--r--doc/it/autogen/user/irc_options.txt2
-rw-r--r--doc/ja/autogen/user/irc_options.txt2
-rw-r--r--po/cs.po5
-rw-r--r--po/de.po6
-rw-r--r--po/es.po6
-rw-r--r--po/fr.po12
-rw-r--r--po/hu.po5
-rw-r--r--po/it.po6
-rw-r--r--po/ja.po6
-rw-r--r--po/pl.po6
-rw-r--r--po/pt_BR.po5
-rw-r--r--po/ru.po5
-rw-r--r--po/weechat.pot5
-rw-r--r--src/plugins/irc/irc-config.c5
-rw-r--r--src/plugins/irc/irc-nick.c11
-rw-r--r--src/plugins/irc/irc-nick.h1
-rw-r--r--src/plugins/irc/irc-protocol.c16
-rw-r--r--src/plugins/irc/irc-upgrade.c5
22 files changed, 70 insertions, 48 deletions
diff --git a/ChangeLog b/ChangeLog
index 20c2f4614..2864d63c8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,7 @@
WeeChat ChangeLog
=================
Sébastien Helleu <flashcode@flashtux.org>
-v0.4.1-dev, 2013-04-21
+v0.4.1-dev, 2013-04-23
This document lists all changes for each version.
@@ -50,6 +50,7 @@ Version 0.4.1 (under dev!)
list with arguments inside), guile >= 2.0 is now required (bug #38350)
* guile: fix crash on calls to callbacks during load of script (bug #38343)
* guile: fix compilation with guile 2.0
+* irc: add support of UHNAMES (capability "userhost-in-names") (task #9353)
* irc: add tag "irc_nick_back" for messages displayed in private buffer when a
nick is back on server (task #12576)
* irc: fix crash on command "/allchan /close"
diff --git a/doc/de/autogen/user/irc_options.txt b/doc/de/autogen/user/irc_options.txt
index 6d46122cd..6a5163b1d 100644
--- a/doc/de/autogen/user/irc_options.txt
+++ b/doc/de/autogen/user/irc_options.txt
@@ -454,7 +454,7 @@
** Werte: 0 .. 1000000 (Standardwert: `25`)
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
-** Beschreibung: `durch Kommata getrennte Liste von erweiterten Client Fähigkeiten ("client capabilities"), welche vom Server angeboten und genutzt werden sollen (Beispiel: "multi-prefix,extended-join")`
+** Beschreibung: `comma-separated list of client capabilities to enable for server if they are available; capabilities supported by WeeChat are: multi-prefix, userhost-in-names (example: "multi-prefix,userhost-in-names")`
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette (Standardwert: `""`)
diff --git a/doc/en/autogen/user/irc_options.txt b/doc/en/autogen/user/irc_options.txt
index a22851b15..395ecceea 100644
--- a/doc/en/autogen/user/irc_options.txt
+++ b/doc/en/autogen/user/irc_options.txt
@@ -454,7 +454,7 @@
** values: 0 .. 1000000 (default value: `25`)
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
-** description: `comma-separated list of client capabilities to enable for server if they are available (example: "multi-prefix,extended-join")`
+** description: `comma-separated list of client capabilities to enable for server if they are available; capabilities supported by WeeChat are: multi-prefix, userhost-in-names (example: "multi-prefix,userhost-in-names")`
** type: string
** values: any string (default value: `""`)
diff --git a/doc/fr/autogen/user/irc_options.txt b/doc/fr/autogen/user/irc_options.txt
index d5489b27f..c2f4703b6 100644
--- a/doc/fr/autogen/user/irc_options.txt
+++ b/doc/fr/autogen/user/irc_options.txt
@@ -454,7 +454,7 @@
** valeurs: 0 .. 1000000 (valeur par défaut: `25`)
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
-** description: `liste séparée par des virgules de capacités client ("client capabilities") à activer sur le serveur si elles sont disponibles (exemple: "multi-prefix,extended-join")`
+** description: `liste séparée par des virgules de capacités client ("client capabilities") à activer sur le serveur si elles sont disponibles; les capacités supportées par WeeChat sont: multi-prefix, userhost-in-names (exemple: "multi-prefix,userhost-in-names")`
** type: chaîne
** valeurs: toute chaîne (valeur par défaut: `""`)
diff --git a/doc/it/autogen/user/irc_options.txt b/doc/it/autogen/user/irc_options.txt
index 65033e631..ca2c4af99 100644
--- a/doc/it/autogen/user/irc_options.txt
+++ b/doc/it/autogen/user/irc_options.txt
@@ -454,7 +454,7 @@
** valori: 0 .. 1000000 (valore predefinito: `25`)
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
-** descrizione: `elenco separato da virgole delle capacità del client ("client capabilities") da abilitare per il server se disponibili (esempio: "multi-prefix,extended-join")`
+** descrizione: `comma-separated list of client capabilities to enable for server if they are available; capabilities supported by WeeChat are: multi-prefix, userhost-in-names (example: "multi-prefix,userhost-in-names")`
** tipo: stringa
** valori: qualsiasi stringa (valore predefinito: `""`)
diff --git a/doc/ja/autogen/user/irc_options.txt b/doc/ja/autogen/user/irc_options.txt
index d4e01eb13..702be0505 100644
--- a/doc/ja/autogen/user/irc_options.txt
+++ b/doc/ja/autogen/user/irc_options.txt
@@ -454,7 +454,7 @@
** 値: 0 .. 1000000 (デフォルト値: `25`)
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
-** 説明: `サーバで利用可能ならば有効化する、クライアントの機能のコンマ区切りリスト (例: "multi-prefix,extended-join")`
+** 説明: `comma-separated list of client capabilities to enable for server if they are available; capabilities supported by WeeChat are: multi-prefix, userhost-in-names (example: "multi-prefix,userhost-in-names")`
** タイプ: 文字列
** 値: 未制約文字列 (デフォルト値: `""`)
diff --git a/po/cs.po b/po/cs.po
index ebb2cb980..804fa55c7 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-03-25 09:00+0100\n"
+"POT-Creation-Date: 2013-04-23 21:20+0200\n"
"PO-Revision-Date: 2013-03-16 17:49+0100\n"
"Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -5729,7 +5729,8 @@ msgstr "heslo pro server"
#. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po)
msgid ""
"comma-separated list of client capabilities to enable for server if they are "
-"available (example: \"multi-prefix,extended-join\")"
+"available; capabilities supported by WeeChat are: multi-prefix, userhost-in-"
+"names (example: \"multi-prefix,userhost-in-names\")"
msgstr ""
msgid ""
diff --git a/po/de.po b/po/de.po
index 95eb02f93..3c431a65d 100644
--- a/po/de.po
+++ b/po/de.po
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-04-16 19:56+0200\n"
+"POT-Creation-Date: 2013-04-23 21:20+0200\n"
"PO-Revision-Date: 2013-04-16 20:07+0200\n"
"Last-Translator: Nils Görs <weechatter@arcor.de>\n"
"Language-Team: German <weechatter@arcor.de>\n"
@@ -6274,9 +6274,11 @@ msgid "password for server"
msgstr "Passwort für den Server"
#. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po)
+#, fuzzy
msgid ""
"comma-separated list of client capabilities to enable for server if they are "
-"available (example: \"multi-prefix,extended-join\")"
+"available; capabilities supported by WeeChat are: multi-prefix, userhost-in-"
+"names (example: \"multi-prefix,userhost-in-names\")"
msgstr ""
"durch Kommata getrennte Liste von erweiterten Client Fähigkeiten (\"client "
"capabilities\"), welche vom Server angeboten und genutzt werden sollen "
diff --git a/po/es.po b/po/es.po
index 62597e4c5..da3971e57 100644
--- a/po/es.po
+++ b/po/es.po
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-03-25 09:00+0100\n"
+"POT-Creation-Date: 2013-04-23 21:20+0200\n"
"PO-Revision-Date: 2013-03-17 08:20+0100\n"
"Last-Translator: Elián Hanisch <lambdae2@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -5937,9 +5937,11 @@ msgid "password for server"
msgstr "contraseña del servidor"
#. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po)
+#, fuzzy
msgid ""
"comma-separated list of client capabilities to enable for server if they are "
-"available (example: \"multi-prefix,extended-join\")"
+"available; capabilities supported by WeeChat are: multi-prefix, userhost-in-"
+"names (example: \"multi-prefix,userhost-in-names\")"
msgstr ""
"lista separada por comas de capabilidades del cliente (\"client capabilities"
"\") para habilitar en el servidor si están disponibles (ejemplo: \"multi-"
diff --git a/po/fr.po b/po/fr.po
index dbdf84528..1c3275d68 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -21,8 +21,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-03-25 09:00+0100\n"
-"PO-Revision-Date: 2013-03-25 09:01+0100\n"
+"POT-Creation-Date: 2013-04-23 21:20+0200\n"
+"PO-Revision-Date: 2013-04-23 21:21+0200\n"
"Last-Translator: Sebastien Helleu <flashcode@flashtux.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: fr\n"
@@ -6112,11 +6112,13 @@ msgstr "mot de passe pour le serveur"
#. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po)
msgid ""
"comma-separated list of client capabilities to enable for server if they are "
-"available (example: \"multi-prefix,extended-join\")"
+"available; capabilities supported by WeeChat are: multi-prefix, userhost-in-"
+"names (example: \"multi-prefix,userhost-in-names\")"
msgstr ""
"liste séparée par des virgules de capacités client (\"client capabilities\") "
-"à activer sur le serveur si elles sont disponibles (exemple: \"multi-prefix,"
-"extended-join\")"
+"à activer sur le serveur si elles sont disponibles; les capacités supportées "
+"par WeeChat sont: multi-prefix, userhost-in-names (exemple: \"multi-prefix,"
+"userhost-in-names\")"
msgid ""
"mechanism for SASL authentication: \"plain\" for plain text password, \"dh-"
diff --git a/po/hu.po b/po/hu.po
index ae6e9a80b..b54d78c55 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-03-25 09:00+0100\n"
+"POT-Creation-Date: 2013-04-23 21:20+0200\n"
"PO-Revision-Date: 2013-03-16 17:50+0100\n"
"Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -5294,7 +5294,8 @@ msgstr "jelszó az IRC szerveren"
#. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po)
msgid ""
"comma-separated list of client capabilities to enable for server if they are "
-"available (example: \"multi-prefix,extended-join\")"
+"available; capabilities supported by WeeChat are: multi-prefix, userhost-in-"
+"names (example: \"multi-prefix,userhost-in-names\")"
msgstr ""
msgid ""
diff --git a/po/it.po b/po/it.po
index a8c706b32..6c1b93808 100644
--- a/po/it.po
+++ b/po/it.po
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-03-25 09:00+0100\n"
+"POT-Creation-Date: 2013-04-23 21:20+0200\n"
"PO-Revision-Date: 2013-03-17 08:20+0100\n"
"Last-Translator: Marco Paolone <marcopaolone@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -5945,9 +5945,11 @@ msgid "password for server"
msgstr "password per il server"
#. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po)
+#, fuzzy
msgid ""
"comma-separated list of client capabilities to enable for server if they are "
-"available (example: \"multi-prefix,extended-join\")"
+"available; capabilities supported by WeeChat are: multi-prefix, userhost-in-"
+"names (example: \"multi-prefix,userhost-in-names\")"
msgstr ""
"elenco separato da virgole delle capacità del client (\"client capabilities"
"\") da abilitare per il server se disponibili (esempio: \"multi-prefix,"
diff --git a/po/ja.po b/po/ja.po
index d5afb3121..ffb1943e4 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-03-25 09:00+0100\n"
+"POT-Creation-Date: 2013-04-23 21:20+0200\n"
"PO-Revision-Date: 2013-03-17 08:20+0100\n"
"Last-Translator: AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>\n"
"Language-Team: Japanese <https://github.com/l/WeeChat>\n"
@@ -5908,9 +5908,11 @@ msgid "password for server"
msgstr "サーバのパスワード"
#. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po)
+#, fuzzy
msgid ""
"comma-separated list of client capabilities to enable for server if they are "
-"available (example: \"multi-prefix,extended-join\")"
+"available; capabilities supported by WeeChat are: multi-prefix, userhost-in-"
+"names (example: \"multi-prefix,userhost-in-names\")"
msgstr ""
"サーバで利用可能ならば有効化する、クライアントの機能のコンマ区切りリスト "
"(例: \"multi-prefix,extended-join\")"
diff --git a/po/pl.po b/po/pl.po
index 3de61ba53..397678829 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-03-25 09:00+0100\n"
+"POT-Creation-Date: 2013-04-23 21:20+0200\n"
"PO-Revision-Date: 2013-03-17 08:20+0100\n"
"Last-Translator: Krzysztof Korościk <soltys@szluug.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -6022,9 +6022,11 @@ msgid "password for server"
msgstr "hasło dla serwera"
#. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po)
+#, fuzzy
msgid ""
"comma-separated list of client capabilities to enable for server if they are "
-"available (example: \"multi-prefix,extended-join\")"
+"available; capabilities supported by WeeChat are: multi-prefix, userhost-in-"
+"names (example: \"multi-prefix,userhost-in-names\")"
msgstr ""
"oddzielona przecinkami lista opcji włączanych dla serwera, jeśli są dostępne "
"(na przykład \"multi-prefix,extended-join\")"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 0abf5688e..f017d0ab2 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-03-25 09:00+0100\n"
+"POT-Creation-Date: 2013-04-23 21:20+0200\n"
"PO-Revision-Date: 2013-03-17 08:20+0100\n"
"Last-Translator: Sergio Durigan Junior <sergiosdj@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -5470,7 +5470,8 @@ msgstr "senha para o servidor"
#. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po)
msgid ""
"comma-separated list of client capabilities to enable for server if they are "
-"available (example: \"multi-prefix,extended-join\")"
+"available; capabilities supported by WeeChat are: multi-prefix, userhost-in-"
+"names (example: \"multi-prefix,userhost-in-names\")"
msgstr ""
msgid ""
diff --git a/po/ru.po b/po/ru.po
index 5938b4a21..2bac8cd51 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-03-25 09:00+0100\n"
+"POT-Creation-Date: 2013-04-23 21:20+0200\n"
"PO-Revision-Date: 2013-03-16 17:50+0100\n"
"Last-Translator: Aleksey V Zapparov AKA ixti <ixti@member.fsf.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -5318,7 +5318,8 @@ msgstr "пароль, используемый при подключении к
#. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po)
msgid ""
"comma-separated list of client capabilities to enable for server if they are "
-"available (example: \"multi-prefix,extended-join\")"
+"available; capabilities supported by WeeChat are: multi-prefix, userhost-in-"
+"names (example: \"multi-prefix,userhost-in-names\")"
msgstr ""
msgid ""
diff --git a/po/weechat.pot b/po/weechat.pot
index 422296356..7ddab6aa9 100644
--- a/po/weechat.pot
+++ b/po/weechat.pot
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-03-25 09:00+0100\n"
+"POT-Creation-Date: 2013-04-23 21:20+0200\n"
"PO-Revision-Date: 2013-02-14 18:20+0100\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -4610,7 +4610,8 @@ msgstr ""
#. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po)
msgid ""
"comma-separated list of client capabilities to enable for server if they are "
-"available (example: \"multi-prefix,extended-join\")"
+"available; capabilities supported by WeeChat are: multi-prefix, userhost-in-"
+"names (example: \"multi-prefix,userhost-in-names\")"
msgstr ""
msgid ""
diff --git a/src/plugins/irc/irc-config.c b/src/plugins/irc/irc-config.c
index 8075903c4..604a591da 100644
--- a/src/plugins/irc/irc-config.c
+++ b/src/plugins/irc/irc-config.c
@@ -1562,8 +1562,9 @@ irc_config_server_new_option (struct t_config_file *config_file,
option_name, "string",
/* TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) */
N_("comma-separated list of client capabilities to enable for "
- "server if they are available (example: "
- "\"multi-prefix,extended-join\")"),
+ "server if they are available; capabilities supported by "
+ "WeeChat are: multi-prefix, userhost-in-names (example: "
+ "\"multi-prefix,userhost-in-names\")"),
NULL, 0, 0,
default_value, value,
null_value_allowed,
diff --git a/src/plugins/irc/irc-nick.c b/src/plugins/irc/irc-nick.c
index 6cd62860f..4ea83df4f 100644
--- a/src/plugins/irc/irc-nick.c
+++ b/src/plugins/irc/irc-nick.c
@@ -606,15 +606,22 @@ irc_nick_nicklist_set_color_all ()
struct t_irc_nick *
irc_nick_new (struct t_irc_server *server, struct t_irc_channel *channel,
- const char *nickname, const char *prefixes, int away)
+ const char *nickname, const char *host, const char *prefixes,
+ int away)
{
struct t_irc_nick *new_nick, *ptr_nick;
int length;
+ if (!nickname || !nickname[0])
+ return NULL;
+
/* nick already exists on this channel? */
ptr_nick = irc_nick_search (server, channel, nickname);
if (ptr_nick)
{
+ /* save away status from existing nick (before removing it) */
+ away = ptr_nick->away;
+
/* remove old nick from nicklist */
irc_nick_nicklist_remove (server, channel, ptr_nick);
@@ -634,7 +641,7 @@ irc_nick_new (struct t_irc_server *server, struct t_irc_channel *channel,
/* initialize new nick */
new_nick->name = strdup (nickname);
- new_nick->host = NULL;
+ new_nick->host = (host) ? strdup (host) : NULL;
length = strlen (irc_server_get_prefix_chars (server));
new_nick->prefixes = malloc (length + 1);
if (new_nick->prefixes)
diff --git a/src/plugins/irc/irc-nick.h b/src/plugins/irc/irc-nick.h
index d2ab2aab9..fa50caf4c 100644
--- a/src/plugins/irc/irc-nick.h
+++ b/src/plugins/irc/irc-nick.h
@@ -62,6 +62,7 @@ extern void irc_nick_nicklist_set_color_all ();
extern struct t_irc_nick *irc_nick_new (struct t_irc_server *server,
struct t_irc_channel *channel,
const char *nickname,
+ const char *host,
const char *prefixes,
int away);
extern void irc_nick_change (struct t_irc_server *server,
diff --git a/src/plugins/irc/irc-protocol.c b/src/plugins/irc/irc-protocol.c
index de26867ad..8cea4fcb8 100644
--- a/src/plugins/irc/irc-protocol.c
+++ b/src/plugins/irc/irc-protocol.c
@@ -566,9 +566,7 @@ IRC_PROTOCOL_CALLBACK(join)
}
/* add nick in channel */
- ptr_nick = irc_nick_new (server, ptr_channel, nick, NULL, 0);
- if (ptr_nick)
- ptr_nick->host = strdup (address);
+ ptr_nick = irc_nick_new (server, ptr_channel, nick, address, NULL, 0);
if (!ignored)
{
@@ -3802,9 +3800,8 @@ IRC_PROTOCOL_CALLBACK(353)
{
char *pos_channel, *pos_nick, *pos_nick_orig, *pos_host, *nickname;
char *prefixes, *str_nicks;
- int args, i, away, length;
+ int args, i, length;
struct t_irc_channel *ptr_channel;
- struct t_irc_nick *ptr_nick;
IRC_PROTOCOL_MIN_ARGS(5);
@@ -3857,7 +3854,10 @@ IRC_PROTOCOL_CALLBACK(353)
/* extract nick from host */
pos_host = strchr (pos_nick, '!');
if (pos_host)
+ {
nickname = weechat_strndup (pos_nick, pos_host - pos_nick);
+ pos_host++;
+ }
else
nickname = strdup (pos_nick);
@@ -3866,10 +3866,8 @@ IRC_PROTOCOL_CALLBACK(353)
{
if (ptr_channel && ptr_channel->nicks)
{
- ptr_nick = irc_nick_search (server, ptr_channel, nickname);
- away = (ptr_nick && ptr_nick->away) ? 1 : 0;
- if (!irc_nick_new (server, ptr_channel, nickname, prefixes,
- away))
+ if (!irc_nick_new (server, ptr_channel, nickname, pos_host,
+ prefixes, 0))
{
weechat_printf (server->buffer,
_("%s%s: cannot create nick \"%s\" "
diff --git a/src/plugins/irc/irc-upgrade.c b/src/plugins/irc/irc-upgrade.c
index 27f6c54b7..1c6b32789 100644
--- a/src/plugins/irc/irc-upgrade.c
+++ b/src/plugins/irc/irc-upgrade.c
@@ -540,14 +540,11 @@ irc_upgrade_read_cb (void *data,
ptr_nick = irc_nick_new (irc_upgrade_current_server,
irc_upgrade_current_channel,
weechat_infolist_string (infolist, "name"),
+ weechat_infolist_string (infolist, "host"),
weechat_infolist_string (infolist, "prefixes"),
weechat_infolist_integer (infolist, "away"));
if (ptr_nick)
{
- str = weechat_infolist_string (infolist, "host");
- if (str)
- ptr_nick->host = strdup (str);
-
/*
* "flags" is not any more in this infolist (since
* WeeChat 0.3.4), but we read it to keep compatibility