summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/irc/core/ctcp.c1
-rw-r--r--src/irc/core/ctcp.h2
-rw-r--r--src/perl/common/Core.xs6
-rw-r--r--src/perl/common/Expando.xs2
-rw-r--r--src/perl/common/Irssi.xs6
-rw-r--r--src/perl/common/module.h1
-rw-r--r--src/perl/irc/Ctcp.xs1
-rw-r--r--src/perl/irc/Irc.xs2
-rw-r--r--src/perl/perl-common.h10
-rw-r--r--src/perl/perl-signals.h3
-rw-r--r--src/perl/textui/TextUI.xs3
-rw-r--r--src/perl/ui/UI.xs3
-rw-r--r--src/perl/ui/Window.xs2
13 files changed, 37 insertions, 5 deletions
diff --git a/src/irc/core/ctcp.c b/src/irc/core/ctcp.c
index 8bd54c0c..1feb430d 100644
--- a/src/irc/core/ctcp.c
+++ b/src/irc/core/ctcp.c
@@ -28,6 +28,7 @@
#include "irc-servers.h"
#include "servers-idle.h"
#include "ignore.h"
+#include "ctcp.h"
typedef struct {
char *name;
diff --git a/src/irc/core/ctcp.h b/src/irc/core/ctcp.h
index beab5711..a146b15f 100644
--- a/src/irc/core/ctcp.h
+++ b/src/irc/core/ctcp.h
@@ -6,7 +6,7 @@ void ctcp_register(const char *name);
void ctcp_unregister(const char *name);
/* Send CTCP reply with flood protection */
-void ctcp_send_reply(SERVER_REC *server, const char *data);
+void ctcp_send_reply(IRC_SERVER_REC *server, const char *data);
void ctcp_init(void);
void ctcp_deinit(void);
diff --git a/src/perl/common/Core.xs b/src/perl/common/Core.xs
index c3fd41ba..d3e07792 100644
--- a/src/perl/common/Core.xs
+++ b/src/perl/common/Core.xs
@@ -2,6 +2,8 @@
#include "irssi-version.h"
#include "core.h"
+#include "pidwait.h"
+
#define DEFAULT_COMMAND_CATEGORY "Perl scripts' commands"
void perl_signal_add_hash(int priority, SV *sv)
@@ -194,7 +196,7 @@ CODE:
croak("Irssi::timeout() : msecs must be >= 10");
RETVAL = -1;
} else {
- RETVAL = perl_timeout_add(msecs, func, data, FALSE);
+ RETVAL = perl_timeout_add(msecs, func, data);
}
OUTPUT:
RETVAL
@@ -209,7 +211,7 @@ CODE:
croak("Irssi::timeout_once() : msecs must be >= 10");
RETVAL = -1;
} else {
- RETVAL = perl_timeout_add(msecs, func, data, TRUE);
+ RETVAL = perl_timeout_add(msecs, func, data);
}
OUTPUT:
RETVAL
diff --git a/src/perl/common/Expando.xs b/src/perl/common/Expando.xs
index d3a232f7..08f5c202 100644
--- a/src/perl/common/Expando.xs
+++ b/src/perl/common/Expando.xs
@@ -71,13 +71,13 @@ static char *perl_expando_event(PerlExpando *rec, SERVER_REC *server,
retcount = perl_call_sv(rec->func, G_EVAL|G_SCALAR);
SPAGAIN;
+ ret = NULL;
if (SvTRUE(ERRSV)) {
/* make sure we don't get back here */
if (rec->script != NULL)
script_unregister_expandos(rec->script);
signal_emit("script error", 2, rec->script, SvPV(ERRSV, PL_na));
- ret = NULL;
} else if (retcount > 0) {
ret = g_strdup(POPp);
*free_ret = TRUE;
diff --git a/src/perl/common/Irssi.xs b/src/perl/common/Irssi.xs
index 328e32d3..d0e82425 100644
--- a/src/perl/common/Irssi.xs
+++ b/src/perl/common/Irssi.xs
@@ -2,6 +2,12 @@
static int initialized = FALSE;
+void perl_expando_init(void);
+void perl_expando_deinit(void);
+
+void perl_settings_init(void);
+void perl_settings_deinit(void);
+
MODULE = Irssi PACKAGE = Irssi
PROTOTYPES: ENABLE
diff --git a/src/perl/common/module.h b/src/perl/common/module.h
index 5456f630..07ecc56f 100644
--- a/src/perl/common/module.h
+++ b/src/perl/common/module.h
@@ -26,6 +26,7 @@
#include "perl/perl-core.h"
#include "perl/perl-common.h"
#include "perl/perl-signals.h"
+#include "perl/perl-sources.h"
typedef COMMAND_REC *Irssi__Command;
typedef LOG_REC *Irssi__Log;
diff --git a/src/perl/irc/Ctcp.xs b/src/perl/irc/Ctcp.xs
index 675091fd..f298a2a4 100644
--- a/src/perl/irc/Ctcp.xs
+++ b/src/perl/irc/Ctcp.xs
@@ -1,4 +1,5 @@
#include "module.h"
+#include "ctcp.h"
MODULE = Irssi::Irc::Ctcp PACKAGE = Irssi
PROTOTYPES: ENABLE
diff --git a/src/perl/irc/Irc.xs b/src/perl/irc/Irc.xs
index e5a662a4..d976ce9e 100644
--- a/src/perl/irc/Irc.xs
+++ b/src/perl/irc/Irc.xs
@@ -8,7 +8,7 @@ static void perl_irc_connect_fill_hash(HV *hv, IRC_SERVER_CONNECT_REC *conn)
static void perl_irc_server_fill_hash(HV *hv, IRC_SERVER_REC *server)
{
- perl_server_fill_hash(hv, server);
+ perl_server_fill_hash(hv, (SERVER_REC *) server);
hv_store(hv, "real_address", 12, new_pv(server->real_address), 0);
hv_store(hv, "usermode", 8, new_pv(server->usermode), 0);
diff --git a/src/perl/perl-common.h b/src/perl/perl-common.h
index cef0036f..32e6e655 100644
--- a/src/perl/perl-common.h
+++ b/src/perl/perl-common.h
@@ -64,6 +64,16 @@ void irssi_add_plains(PLAIN_OBJECT_INIT_REC *objects);
char *perl_get_use_list(void);
+void perl_command(const char *cmd, SERVER_REC *server, WI_ITEM_REC *item);
+
+void perl_chatnet_fill_hash(HV *hv, CHATNET_REC *chatnet);
+void perl_connect_fill_hash(HV *hv, SERVER_CONNECT_REC *conn);
+void perl_server_fill_hash(HV *hv, SERVER_REC *server);
+void perl_window_item_fill_hash(HV *hv, WI_ITEM_REC *item);
+void perl_channel_fill_hash(HV *hv, CHANNEL_REC *channel);
+void perl_query_fill_hash(HV *hv, QUERY_REC *query);
+void perl_nick_fill_hash(HV *hv, NICK_REC *nick);
+
#define irssi_boot(x) { \
extern void boot_Irssi__##x(pTHX_ CV *cv); \
irssi_callXS(boot_Irssi__##x, cv, mark); \
diff --git a/src/perl/perl-signals.h b/src/perl/perl-signals.h
index 92196d04..60e6636e 100644
--- a/src/perl/perl-signals.h
+++ b/src/perl/perl-signals.h
@@ -18,6 +18,9 @@ void perl_command_bind_to(const char *cmd, const char *category,
void perl_command_unbind(const char *cmd, SV *func);
+void perl_command_runsub(const char *cmd, const char *data,
+ SERVER_REC *server, WI_ITEM_REC *item);
+
void perl_signals_start(void);
void perl_signals_stop(void);
diff --git a/src/perl/textui/TextUI.xs b/src/perl/textui/TextUI.xs
index 4e7db7b2..4f23a9a0 100644
--- a/src/perl/textui/TextUI.xs
+++ b/src/perl/textui/TextUI.xs
@@ -1,5 +1,8 @@
#include "module.h"
+void perl_statusbar_init(void);
+void perl_statusbar_deinit(void);
+
static int initialized = FALSE;
static void perl_main_window_fill_hash(HV *hv, MAIN_WINDOW_REC *window)
diff --git a/src/perl/ui/UI.xs b/src/perl/ui/UI.xs
index c2ee46b4..670fb1a5 100644
--- a/src/perl/ui/UI.xs
+++ b/src/perl/ui/UI.xs
@@ -1,5 +1,8 @@
#include "module.h"
+void perl_themes_init(void);
+void perl_themes_deinit(void);
+
static int initialized = FALSE;
static void perl_process_fill_hash(HV *hv, PROCESS_REC *process)
diff --git a/src/perl/ui/Window.xs b/src/perl/ui/Window.xs
index 89d874ee..f8ef0315 100644
--- a/src/perl/ui/Window.xs
+++ b/src/perl/ui/Window.xs
@@ -1,5 +1,7 @@
#include "module.h"
+#include "window-activity.h"
+
MODULE = Irssi::UI::Window PACKAGE = Irssi
PROTOTYPES: ENABLE