From c1cfe442922782ab23a5a0b0e2eda4c4d8b59739 Mon Sep 17 00:00:00 2001 From: Pekka Riikonen Date: Thu, 7 Jun 2007 19:25:35 +0000 Subject: [PATCH] Add all fd task events to fd's added to glib main loop. --- apps/irssi/src/silc/core/silc-core.c | 7 ++++--- apps/irssi/src/silc/core/silc-servers.c | 11 ++++++++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/apps/irssi/src/silc/core/silc-core.c b/apps/irssi/src/silc/core/silc-core.c index e2c189bb..aadf2662 100644 --- a/apps/irssi/src/silc/core/silc-core.c +++ b/apps/irssi/src/silc/core/silc-core.c @@ -109,13 +109,14 @@ static void scheduler_notify_cb(SilcSchedule schedule, g_source_remove_by_user_data(SILC_32_TO_PTR(fd)); if (event & SILC_TASK_READ) - e |= G_IO_IN; + e |= (G_IO_IN | G_IO_PRI | G_IO_HUP | G_IO_ERR); if (event & SILC_TASK_WRITE) - e |= G_IO_OUT; + e |= (G_IO_OUT | G_IO_HUP | G_IO_ERR | G_IO_NVAL); if (e) { ch = g_io_channel_unix_new(fd); g_io_add_watch(ch, e, my_silc_scheduler_fd, SILC_32_TO_PTR(fd)); + g_io_channel_unref(ch); } } else { /* Add timeout */ @@ -126,7 +127,7 @@ static void scheduler_notify_cb(SilcSchedule schedule, if (!seconds && !useconds) return; - t = (seconds * 1000) + (useconds / 1000), + t = (seconds * 1000) + (useconds / 1000); SILC_LOG_DEBUG(("interval %d msec", t)); g_timeout_add(t, my_silc_scheduler, NULL); } diff --git a/apps/irssi/src/silc/core/silc-servers.c b/apps/irssi/src/silc/core/silc-servers.c index ba0dc80a..e16fb02c 100644 --- a/apps/irssi/src/silc/core/silc-servers.c +++ b/apps/irssi/src/silc/core/silc-servers.c @@ -102,9 +102,14 @@ static void silc_send_msg_clients(SilcClient client, clients = silc_client_get_clients_local(silc_client, server->conn, rec->nick, FALSE); if (!clients) { - printtext(NULL, NULL, MSGLEVEL_CLIENTERROR, - "%s: There is no such client (did you mean %s?)", rec->nick, - target->nickname); + if (strchr(rec->nick, '@') && target->server) + printtext(NULL, NULL, MSGLEVEL_CLIENTERROR, + "%s: There is no such client (did you mean %s@%s?)", rec->nick, + target->nickname, target->server); + else + printtext(NULL, NULL, MSGLEVEL_CLIENTERROR, + "%s: There is no such client (did you mean %s?)", rec->nick, + target->nickname); goto out; } -- 2.24.0