diff --git a/src/perl/perl-core.c b/src/perl/perl-core.c index 1814ef36..5c418928 100644 --- a/src/perl/perl-core.c +++ b/src/perl/perl-core.c @@ -112,16 +112,18 @@ static void xs_init(pTHX) void perl_scripts_init(void) { char *args[] = {"", "-e", "0"}; + int argc = 3; char *code, *use_code; perl_scripts = NULL; perl_sources_start(); perl_signals_start(); + PERL_SYS_INIT3(&argc, &args, &environ); my_perl = perl_alloc(); perl_construct(my_perl); - perl_parse(my_perl, xs_init, 3, args, NULL); + perl_parse(my_perl, xs_init, &argc, args, NULL); #if PERL_STATIC_LIBS == 1 perl_eval_pv("Irssi::Core::boot_Irssi_Core();", TRUE); #endif @@ -165,6 +167,7 @@ void perl_scripts_deinit(void) PL_perl_destruct_level = 1; perl_destruct(my_perl); perl_free(my_perl); + PERL_SYS_TERM(); my_perl = NULL; }