441 Commits

Author SHA1 Message Date
David Leadbeater
211422cbe8 Switch to using G_DISCARD for call_pv
PUTBACK was being called even for the error path which didn't use the
stack. Emitting the "script error" signal can involve running Perl code
(Irssi:core::destroy) therefore the stack can be reallocated. This
can result in the perl stack being corrupted because the local stack
pointer is out of date (although as it's use of freed memory the crash
is not always instant).
2014-06-27 11:08:01 +01:00
Alexander Færøy
ea704df7e0 Merge pull request #20 from ailin-nemui/broken-signal-parser
fix signals parser
2014-06-19 00:00:54 +02:00
Ailin Nemui
b05b6cde4d fix signals parser 2014-06-18 23:54:17 +02:00
Alexander Færøy
bb11725a52 Merge pull request #23 from ailin-nemui/perl-format_get_text
fix implementation of format_get_text script api
2014-06-18 22:56:37 +02:00
Ailin Nemui
24ea87bd27 fix implementation of format_get_text script api 2014-06-16 01:55:46 +02:00
Ailin Nemui
21bf59f4c1 correct package of server gui_printtext_after 2014-06-16 01:55:46 +02:00
Ailin Nemui
31c7c8eb95 fix package of term_refresh_* script api 2014-06-16 01:55:46 +02:00
David Hill
0d4f13d20f Replace deprecated g_str[n]casecmp with g_ascii_str[n]cmp. 2014-06-10 12:06:19 -04:00
Emanuele Giaquinta
8e48c6c36a Properly validate the argument of Irssi::theme_register as an array reference,
patch by Olof Johansson.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5214 dbcabf3a-b0e7-0310-adc4-f8d773084564
2012-06-24 09:33:28 +00:00
Alexander Færøy
796134ffbd Add -noautosendcmd to /SERVER and /CONNECT.
Passing this option will force Irssi to not execute the content of the
autosendcmd chatnet-setting upon connect.

Fixes: #738


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5209 dbcabf3a-b0e7-0310-adc4-f8d773084564
2011-11-21 21:27:58 +00:00
Jase Thew
2bee6f12ae Add the path contained in the perl_use_lib setting to the search list
when attempting to automatically use chat_protocol perl modules. This
fixes the automatic calling of "use Irssi::Irc" when the Irssi perl modules
have been installed in a location outside of perl's site/vendor hierarchy.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5197 dbcabf3a-b0e7-0310-adc4-f8d773084564
2010-12-09 09:51:58 +00:00
Wouter Coekaerts
350b346c84 Add prefixes to irc_nicklist_insert() so that nickrec.prefixes is accurate in the
"nicklist new" signal.

Fixes the nicklist sorting on xirssi.

Patch by nenolod.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5184 dbcabf3a-b0e7-0310-adc4-f8d773084564
2010-07-24 14:36:55 +00:00
Wouter Coekaerts
bf6afc4a94 Add missing include of misc.h for g_input_add_poll (Bug #740)
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5119 dbcabf3a-b0e7-0310-adc4-f8d773084564
2010-02-25 19:42:58 +00:00
Jilles Tjoelker
aab41042fc Make several signals without parameters available to perl again.
In particular, this includes the "beep" signal.

Submitted by Matt Sparks
Bug #674


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5100 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-09-06 21:27:38 +00:00
Emanuele Giaquinta
fadb9f9edf Fix r4998 change, declare 'environ'.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5058 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-04-05 18:04:59 +00:00
Jilles Tjoelker
cb1f07352a Reject invalid level specifications in /set.
Most of these have names that end in "_level".


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5021 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-02-21 21:17:51 +00:00
Alexander Færøy
2fffcf5a77 Code Cleanup:
Use g_string_printf() instead of g_string_sprintf() (which is considered deprecated.)



git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5004 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-02-08 17:57:19 +00:00
Alexander Færøy
c561ba35e6 Code Cleanup:
Use g_string_append_printf() instead of g_string_sprintfa() (which is considered deprecated.)


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5003 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-02-08 17:22:42 +00:00
Emanuele Giaquinta
b12bd857a5 Call PERL_SYS_INIT3() and PERL_SYS_TERM() as documented in perlembed(1).
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4998 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-01-23 17:57:49 +00:00
Emanuele Giaquinta
508f8e1ddb Add Irssi::UI::Window::get_history_lines to get the content of a window's
history.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4993 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-01-17 22:33:29 +00:00
Emanuele Giaquinta
822e6caee8 Revert r4871, it breaks /script reset.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4992 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-01-17 22:28:47 +00:00
Emanuele Giaquinta
2129c4b229 Properly unload the original script when using /script load to reload it.
bug #525, patch by Lukas Mai.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4991 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-01-16 22:02:02 +00:00
Jilles Tjoelker
d993ce7b06 Use PERL_SYS_INIT3 with the correct pointer type for argv.
This fixes perl crashes on startup on some machines.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4989 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-01-15 22:21:31 +00:00
Emanuele Giaquinta
b2566682ee Fix minor leak.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4987 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-01-15 11:02:23 +00:00
Emanuele Giaquinta
5b4e05c553 Factor out printformat_module_dest_charargs function from
printformat_module_dest_args and use it in printformat_perl to remove code
duplication.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4979 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-01-10 15:00:06 +00:00
Emanuele Giaquinta
bae9c1db7a Fix r4961 change, irssi-core.pl is transformed in a format string so literals
% must be escaped. Patch by Lukas Mai.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4969 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-17 18:56:56 +00:00
Emanuele Giaquinta
1b7296dc5f Revert r4964, at least one script uses ypos.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4965 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-12 10:42:14 +00:00
Emanuele Giaquinta
feb95100ce Remove ypos field of TEXT_BUFFER_VIEW_REC, it is used to compute the row
position where to draw a new line and if the view is at the bottom of the
textbuffer, but the same information can be computed more easily by other
means.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4964 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-11 20:59:21 +00:00
Emanuele Giaquinta
f9f031826f Remove methods to create/destroy TextBuffer and TextBufferView and low level
api to add/remove lines, scripts should be fine using Window::print_after and
TextBufferView::remove_line.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4963 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-10 10:21:04 +00:00
Emanuele Giaquinta
29a56d7974 Add print_after method to Window perl object analogous to
gui_printtext_after but which also expands formats and forces a full
line.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4962 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-10 09:35:25 +00:00
Emanuele Giaquinta
0327b7d5dc Clean up script loading in general.
Don't leak local variables to eval'd code.
Set filename/line number to get better error messages from perl.
Use three-arg open and lexical filehandles to avoid surprises.
Include error reason in message for unopenable scripts.
Don't wrap script code in sub handler { } - this avoids spurious warnings and
should at least allow __END__ to work properly.
Patch by Lukas Mai.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4961 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-09 21:42:51 +00:00
Emanuele Giaquinta
7982a86420 Fix undefined behavior due to modifying PL_na twice between sequence points.
Patch by Lukas Mai.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4960 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-09 18:16:49 +00:00
Emanuele Giaquinta
20c362a93d Remove resize method of TextBufferView perl object, it is not useful
and dangerous.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4959 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-09 18:02:53 +00:00
Emanuele Giaquinta
48d0135d3e Make some functions static.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4956 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-08 17:11:00 +00:00
Emanuele Giaquinta
8c64738cdc Add perl_signal_args_to_c() to convert signal parameters from Perl to C values,
and make Irssi::signal_emit/Irssi::signal_continue use it. Also make
perl_call_signal() turn NULLs into undef, so we can recover them in
perl_signal_args_to_c(), which is its inverse operation.
Patch by Lukas Mai.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4953 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-08 16:06:11 +00:00
Emanuele Giaquinta
0cea011470 Fix NETSPLIT_SERVER_REC substitution in get-signals.pl, reported by Lukas Mai.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4952 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-08 15:45:49 +00:00
Jilles Tjoelker
8994731d1b Add a notice to src/perl/perl-signals-list.h that it is autogenerated.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4944 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-05 23:59:49 +00:00
Jilles Tjoelker
89cd47bf3a Allow storing multiple "other" prefixes such as +q and +a.
Original patch by JasonX, somewhat changed by exg and me.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4922 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-11-28 00:16:51 +00:00
Emanuele Giaquinta
be57a4e3e1 Remove apparently useless indirection through stub libtool library
files for libperl.a and DynaLoader.a when building perl support as
module.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4919 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-11-23 09:48:48 +00:00
Emanuele Giaquinta
877c64a08c Add perl __WARN__ handler for scripts, bug #427.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4898 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-11-12 18:04:39 +00:00
Emanuele Giaquinta
f0647439a9 Add Irssi::command_parse_options function to parse options for a command which
have been set with Irssi::command_set_options.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4896 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-11-11 23:33:47 +00:00
Jochen Eisinger
f8461d39bc introduce the type Irssi::Irc::Client and signals to communicate with proxy
clients to allow for scripting parts of the irssi-proxy.



git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4882 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-11-02 12:13:36 +00:00
Emanuele Giaquinta
73b18f2672 Fix r4879 change.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4881 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-11-02 07:34:35 +00:00
Jilles Tjoelker
aa39fba88d Remove the refcount on LINE_REC.
It seems to have no clear purpose.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4879 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-11-01 17:56:56 +00:00
Jilles Tjoelker
84e1e871e7 Fix crash on startup if perl is compiled in.
bug #618


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4872 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-08-23 16:05:47 +00:00
Emanuele Giaquinta
47f129e0a5 Call PERL_SYS_INIT3() and PERL_SYS_TERM() as documented in perlembed(1), patch
by Gerfried Fuchs (debian bug #495059).


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4871 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-08-22 11:54:32 +00:00
Emanuele Giaquinta
fd44be823e Use g_input_add_poll to create a watcher for an fd.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4819 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-05-13 14:43:33 +00:00
Emanuele Giaquinta
97da8b64f4 Set PL_perl_destruct_level to 1 before calling perl_destruct, without
it /script reset may cause irssi to crash.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4817 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-05-13 14:27:03 +00:00
Emanuele Giaquinta
7df46597e1 Use g_ascii_str{,n}casecmp for case insensitive comparison with
ascii only strings.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4738 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-03-09 12:01:16 +00:00
Emanuele Giaquinta
8c3e50489f Remove useless PERL_LIBTOOL indirection.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4731 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-03-07 10:56:38 +00:00