diff options
Diffstat (limited to 'src/perl/common/Channel.xs')
-rw-r--r-- | src/perl/common/Channel.xs | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/src/perl/common/Channel.xs b/src/perl/common/Channel.xs index 8a2cd824..7ebc927b 100644 --- a/src/perl/common/Channel.xs +++ b/src/perl/common/Channel.xs @@ -41,6 +41,26 @@ channel_find(server, name) Irssi::Server server char *name +void +nicklist_get_same(server, nick) + Irssi::Server server + char *nick +PREINIT: + GSList *list, *tmp; + HV *nickstash; +PPCODE: + list = nicklist_get_same(server, nick); + + nickstash = gv_stashpv("Irssi::Nick", 0); + for (tmp = list; tmp != NULL; tmp = tmp->next->next) { + CHANNEL_REC *channel = tmp->data; + + XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(channel))), + irssi_get_stash(channel)))); + XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->next->data))), nickstash))); + } + g_slist_free(list); + #******************************* MODULE = Irssi PACKAGE = Irssi::Channel PREFIX = channel_ #******************************* @@ -107,26 +127,6 @@ PPCODE: } g_slist_free(list); -void -nicklist_get_same(server, nick) - Irssi::Server server - char *nick -PREINIT: - GSList *list, *tmp; - HV *nickstash; -PPCODE: - list = nicklist_get_same(server, nick); - - nickstash = gv_stashpv("Irssi::Nick", 0); - for (tmp = list; tmp != NULL; tmp = tmp->next->next) { - CHANNEL_REC *channel = tmp->data; - - XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(channel))), - irssi_get_stash(channel)))); - XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->next->data))), nickstash))); - } - g_slist_free(list); - #******************************* MODULE = Irssi PACKAGE = Irssi::Nick #******************************* |