1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-25 20:36:38 +02:00

fix the possibility to load a perl script even if it doesn't call register() function

This commit is contained in:
Emmanuel Bouthenot
2007-02-17 18:23:50 +00:00
parent aba6e1257d
commit 429167f032
8 changed files with 16 additions and 28 deletions
+1 -3
View File
@@ -2331,7 +2331,7 @@ weechat_lua_load (t_weechat_plugin *plugin, char *filename)
plugin->print_server (plugin,
"Lua warning: unable to redirect stdout and stderr");
lua_current_script_filename = strdup (filename);
lua_current_script_filename = filename;
if (luaL_loadfile (lua_current_interpreter, filename) != 0)
{
@@ -2363,9 +2363,7 @@ weechat_lua_load (t_weechat_plugin *plugin, char *filename)
weechat_script_remove (plugin, &lua_scripts, lua_current_script);
return 0;
}
fclose (fp);
free (lua_current_script_filename);
if (lua_current_script == NULL)
{
+4 -5
View File
@@ -145,7 +145,9 @@ weechat_perl_exec (t_weechat_plugin *plugin,
SAVETMPS;
PUSHMARK(sp);
perl_current_script = script;
/* are we loading the script file ? */
if (strcmp (function, "weechat_perl_load_eval_file") != 0)
perl_current_script = script;
if (arg1)
{
@@ -1980,7 +1982,7 @@ weechat_perl_load (t_weechat_plugin *plugin, char *filename)
return 0;
}
perl_current_script_filename = strdup (filename);
perl_current_script_filename = filename;
PERL_SET_CONTEXT (perl_current_interpreter);
perl_construct (perl_current_interpreter);
@@ -1991,9 +1993,6 @@ weechat_perl_load (t_weechat_plugin *plugin, char *filename)
eval = weechat_perl_exec (plugin, &tempscript,
SCRIPT_EXEC_INT,
"weechat_perl_load_eval_file", filename, "", "");
free (perl_current_script_filename);
#endif
if (eval == NULL)
{
+2 -3
View File
@@ -2053,8 +2053,8 @@ weechat_python_load (t_weechat_plugin *plugin, char *filename)
plugin->print_server (plugin,
"Python warning: unable to redirect stderr");
}
python_current_script_filename = strdup (filename);
python_current_script_filename = filename;
if (PyRun_SimpleFile (fp, filename) != 0)
{
@@ -2077,7 +2077,6 @@ weechat_python_load (t_weechat_plugin *plugin, char *filename)
if (PyErr_Occurred ()) PyErr_Print ();
fclose (fp);
free (python_current_script_filename);
if (python_current_script == NULL)
{
+1 -3
View File
@@ -2179,13 +2179,11 @@ weechat_ruby_load (t_weechat_plugin *plugin, char *filename)
curModule = rb_define_module(modname);
ruby_current_script_filename = strdup (filename);
ruby_current_script_filename = filename;
ruby_retcode = rb_protect_funcall (curModule, rb_intern("load_eval_file"),
&ruby_error, 1, rb_str_new2(filename));
free (ruby_current_script_filename);
if (ruby_retcode == Qnil) {
err = rb_inspect(rb_gv_get("$!"));
ruby_plugin->print_server (ruby_plugin, "Ruby error: \"%s\"", STR2CSTR(err));