1
0
mirror of https://github.com/irssi/irssi.git synced 2024-12-04 14:46:39 -05:00
Commit Graph

4515 Commits

Author SHA1 Message Date
Calvin Buckley
a634b34ba4 Rename cap_* funcs to irc_cap_*
Some systems often "namespace" cap_ for themselves, and so irssi's
usage can conflict with their own. Bump ABI for this.
2018-11-25 14:50:47 +00:00
ailin-nemui
10f41e067e fix backward completion 2018-11-25 14:19:57 +01:00
ailin-nemui
88b1649195 add keep_word setting to completion 2018-11-25 14:16:08 +01:00
ailin-nemui
257cb2f5f9
Merge pull request #971 from ailin-nemui/paste-join-lines
fix paste_join_multiline
2018-11-19 16:07:00 +01:00
Calvin Buckley
4380f3820e Fix compilation of irc/core on AIX and IBM i
There's a function in the standard library of these OSes that conflict
with this function. Prefix it with `irc_`.
2018-11-19 13:58:51 +00:00
ailin-nemui
288f220f87 fix width of byte codepoints 2018-11-13 00:14:15 +01:00
ailin-nemui
deaa1da55e cast to unsigned char 2018-11-12 14:11:27 +01:00
ailin-nemui
9e5e5d8625 expose wcwidth and related to perl 2018-11-12 13:14:02 +01:00
ailin-nemui
6c40567dab
Merge pull request #957 from ailin-nemui/rawlog
Improve rawlog performance
2018-11-12 13:02:41 +01:00
ailin-nemui
4537d85b0b reverse queue 2018-11-09 11:32:00 +01:00
ailin-nemui
c1fb9a8402 fix paste_join_multiline 2018-11-09 11:06:13 +01:00
ailin-nemui
8054b5c2bd
Merge pull request #967 from vague666/hide_targets_no_item
allow activity_hide_targets to hide activity in itemless windows
2018-10-29 10:35:08 +01:00
vague666
ec577f9265 typo 2018-10-27 20:52:14 +02:00
vague666
f7966d9c08 allow activity_hide_targets to hide activity in itemless windows 2018-10-27 20:51:29 +02:00
vague666
3061f5d848 make sure only channels are checked 2018-10-27 20:00:15 +02:00
vague666
2093530e75 Make it possible to only autolog saved channels 2018-10-27 16:08:36 +02:00
ailin-nemui
524f31b026
Merge pull request #965 from ailin-nemui/fix-signal-emit
Fix wrong signal emission arg count
2018-10-19 02:08:08 +02:00
Doug Freed
f11b629b2f Fix issues pointed out by e38774cc 2018-10-19 01:06:43 +02:00
ailin-nemui
bc1d82a757
Merge pull request #964 from ailin-nemui/fixes
fix duplicate include guard and link libs of test
2018-10-18 15:15:50 +02:00
ailin-nemui
6ca13dd5cd
Merge pull request #905 from horgh/horgh/topic-regression
Add tests for topic events
2018-10-17 12:31:52 +02:00
ailin-nemui
cbc27062e7 fix duplicate include guard 2018-10-17 00:58:49 +02:00
Will Storey
81f3d6dbc1 Comment colour code meaning 2018-10-08 20:40:37 -07:00
Will Storey
08b4d6c031 Fix some space indentation 2018-10-08 20:23:22 -07:00
ailin-nemui
4eff3f154d
Merge pull request #959 from ailin-nemui/notice-routing
Route notices intended for channels into the channel
2018-10-08 18:18:54 +02:00
ailin-nemui
cdcb50f413 add a setting 2018-10-08 17:41:46 +02:00
ailin-nemui
a30fbd6cfb
Merge pull request #961 from ailin-nemui/no-topic-glitch
Show the proper TXT when topic was unset
2018-10-07 10:23:19 +02:00
ailin-nemui
80f9f16939 Show the proper TXT when topic was unset 2018-10-06 20:14:49 +02:00
ailin-nemui
8b1afbd355 revert core changes 2018-10-06 20:05:54 +02:00
ailin-nemui
08ac2ee5be refactor cnotice test into function 2018-10-05 16:13:47 +02:00
ailin-nemui
d2dbcc1999 Route notices intended for channels into the channel 2018-10-05 15:37:27 +02:00
ailin-nemui
2200bd3656 Make /1/2/3/... a setting 2018-10-05 13:46:39 +02:00
ailin-nemui
cee9d09deb
Merge pull request #955 from ailin-nemui/split-width-bug
fix and document window width on screen width dependency
2018-10-05 10:49:50 +02:00
ailin-nemui
d815c88050
Merge pull request #953 from dwfreed/fix-printtext.h
Use ##__VA_ARGS__ extension to allow for argument-less ...
2018-10-05 10:48:25 +02:00
ailin-nemui
b96a41cf3d
Merge pull request #951 from dwfreed/patch-1
fe-text: clear hidelevel in layout if default
2018-10-05 10:47:12 +02:00
ailin-nemui
1e2547eb92 fixup perl side 2018-10-04 09:33:07 +02:00
ailin-nemui
ff0daf5870 actually create the queue, too 2018-10-04 09:31:08 +02:00
ailin-nemui
95692d4d86 up abi 2018-10-04 09:24:10 +02:00
ailin-nemui
05fd64dd16 improve rawlog perf 2018-10-04 09:24:10 +02:00
ailin-nemui
f207e844f1
Merge pull request #949 from ailin-nemui/help-narrow
Fix insufficient size of help column when the window width is small
2018-10-02 00:09:01 +02:00
ailin-nemui
011372ecdd
Merge pull request #948 from ailin-nemui/invalid-startline
invalidate startline and bottom_startline when hidden
2018-10-02 00:08:30 +02:00
ailin-nemui
ca1ec21dc2 fix and document window width on screen width dependency 2018-10-01 09:14:03 +02:00
Doug Freed
c4bf228e6c Fix check for C99 in printtext.h 2018-09-30 06:52:02 +00:00
Doug Freed
f5e587a83b
Fix 01f961c 2018-09-29 18:37:10 -04:00
ailin-nemui
7ab52e73c6
Merge pull request #947 from ailin-nemui/rsplit-collapse
Fix broken display after resizing many windows very small
2018-09-29 22:03:06 +02:00
ailin-nemui
630c6f7e14
Merge pull request #946 from ailin-nemui/resize-freeze
fix irssi being stuck when resized very small
2018-09-29 22:02:29 +02:00
ailin-nemui
116e202d22
Merge pull request #938 from ailin-nemui/hide-hidden-act
Don't trigger activity on hidden lines by default
2018-09-29 22:02:10 +02:00
Doug Freed
b264540f4e
fe-text: clear hidelevel in layout if default
This is required, otherwise setting the hidelevel to the default will
not be written in the layout and so won't persist.
2018-09-29 07:13:32 -04:00
ailin-nemui
04daf62dbf Fix insufficient size of help column when the window width is small 2018-09-28 14:30:39 +02:00
ailin-nemui
8684ccb45c invalidate startline and bottom_startline when hidden
this was overlooked when adding hidden line support. if the lines are
removed, Irssi has to update the startline. It does that by "scrolling"
the lines to the proper place. The scroll function was adjusted to
calculate 0 for hidden lines, thus it would miss them.
2018-09-28 11:41:30 +02:00
ailin-nemui
76b934d18e Fix broken display after resizing many windows very small 2018-09-26 15:21:08 +02:00
ailin-nemui
db005007cf fix irssi being stuck when resized very small 2018-09-26 14:18:37 +02:00
ailin-nemui
01f961cdf1 Don't trigger activity on hidden lines by default
This is controlled by a new activity_hide_window_hidelevel setting.
2018-09-24 08:18:13 +00:00
ailin-nemui
cdfd75da98
Merge pull request #941 from dwfreed/window_default_hidelevel
Add window_default_hidelevel setting
2018-09-23 11:22:46 +02:00
ailin-nemui
57857856a6
Merge pull request #937 from ailin-nemui/hidden-ignores
correctly separate ignore flags (no_act, hidden) from level
2018-09-23 11:22:31 +02:00
ailin-nemui
f231a59e81 properly document the ignore_match_level so I understand it next time 2018-09-20 17:50:35 +02:00
ailin-nemui
ee92e3aff2
Merge pull request #939 from ailin-nemui/fix-modules
some header fixes for C modules
2018-09-20 17:38:03 +02:00
ailin-nemui
708ba06dbc
Merge pull request #930 from ailin-nemui/fix-928
fix accessing unallocated text when checking entry position
2018-09-20 17:37:50 +02:00
ailin-nemui
a7af259dd1
Merge pull request #929 from ailin-nemui/oddcommands
Remove incorrectly copied automake commands from fuzzer
2018-09-18 21:14:55 +02:00
Doug Freed
cad79f1db7 Fix compilation warning 2018-09-17 14:34:06 +00:00
Doug Freed
074e6cf768 fe-text: only save non-default window hidelevel
This will only save the window hidelevel in the layout if it differs
from window_default_hidelevel.
2018-09-17 14:26:25 +00:00
Doug Freed
cb6279c63b fe-text: add window_default_hidelevel setting
Allows specifying the hidelevel that new windows get by default.
2018-09-17 13:28:46 +00:00
ailin-nemui
011d9437d1 oops 2018-09-17 13:08:43 +02:00
ailin-nemui
7e9f8c694b simplify ignore hidden/no_act code 2018-09-17 12:48:42 +02:00
ailin-nemui
b9a274a81d correctly separate ignore flags (no_act, hidden) from level 2018-09-17 12:26:13 +02:00
ailin-nemui
20dcf4e53e fix compilation of python module 2018-09-14 12:44:41 +02:00
ailin-nemui
c174247502 fix compilation of theme-indent module 2018-09-14 11:59:05 +02:00
ailin-nemui
c80946bcf5 Disconnect SASL properly in case the sasl module got unloaded from server
stops from getting on the network when sasl is unavailable

fixes #629
2018-09-04 15:50:58 +02:00
ailin-nemui
74e8371bde fix accessing unallocated text when checking entry position
fixes #928
2018-09-04 14:12:03 +02:00
ailin-nemui
3f0a4ef197 Remove incorrectly copied automake commands from fuzzer 2018-09-04 10:17:20 +02:00
ailin-nemui
7f14d4d744
Merge pull request #896 from phillid/winch-redraw
Don't ignore SIGWINCH when window size is unchanged
2018-09-04 10:02:52 +02:00
ailin-nemui
d93cd63243
Merge pull request #917 from dequis/wcwidth-wrapper
Add a wrapper of wcwidth() that picks the best implementation
2018-09-04 09:52:21 +02:00
ailin-nemui
e5759a7fb7
Merge pull request #914 from ailin-nemui/textbuffer_lineinfo
properly record line info on empty lines
2018-09-04 09:37:10 +02:00
ailin-nemui
329448939b
Fix gnu wcwidth 2018-09-04 09:36:45 +02:00
ailin-nemui
afb3daaf65
Merge pull request #919 from ailin-nemui/uafs
Use-after-frees
2018-09-04 09:35:47 +02:00
ailin-nemui
8261b2a7c8
Merge pull request #922 from dequis/fix-new-config-file-write
Fix /save not working if the config didn't previously exist
2018-09-04 09:35:21 +02:00
dequis
e2e27d1809 Improve error message when failing to create the config dir 2018-09-02 01:20:09 -03:00
dequis
3351c54a2f Fix /save not working if the config didn't previously exist
realpath() was supposed to resolve symlinks but it also fails with
ENOENT (no such file or directory) if the file just isn't there.
2018-09-01 19:12:17 -03:00
Will Storey
b11932d24f Make channel event functions static again 2018-08-27 21:04:23 -07:00
Will Storey
2ccb312b8b Expose functions for testing 2018-08-27 20:51:18 -07:00
Will Storey
2d6033542e Add functions to override irssi dir and config
Setting up to test is easier this way.
2018-08-27 20:51:18 -07:00
Will Storey
04db359a6d Handle topic info numeric separately from topic & topic numeric
As we called the same function for the topic info numeric, we ended up
losing the topic as that numeric does not include it. We now call a
different function to handle this case more carefully. Fixes #903.
2018-08-27 20:51:18 -07:00
Will Storey
bbca1a5a0f Revert "Revert "Flag topic as unset if it is zero length""
This reverts commit 817179a760.
2018-08-27 20:50:17 -07:00
ailin-nemui
1bbd9f393c
Merge pull request #909 from meribold/master
Fix `/save` replacing symlinks with regular files
2018-08-27 10:13:20 +02:00
dequis
7b70d051da wcwidth-wrapper: avoid cast with a tiny wrapper, julia_wcwidth() 2018-08-27 00:14:01 -03:00
dequis
92804cb1aa gui-windows: make the wcwidth_impl global var into static 2018-08-27 00:01:47 -03:00
dequis
e450a7f8c1 modules_deinit: Fix -Werror=declaration-after-statement 2018-08-24 02:27:45 -03:00
dequis
ade2f87fe5 Fix use after free introduced by the use after free patch 2018-08-24 02:19:42 -03:00
dequis
9dd836b876 Fix "discards ‘const’ qualifier" warnings 2018-08-24 02:11:22 -03:00
ailin-nemui
071ada830b up abi 2018-08-23 14:21:37 +02:00
coypu@sdf.org
610ab2dafa Use-after-frees
Hi folks!

I tried clang-static-analyzer on irssi 1.1.1, it seems like it
finds some things. Here's a diff, but there might be more that you would
want to check, or choose to work differently.

(in special-vars.c, ret is commands->data sometime)

I hope it's not too much trouble if reported as a confidential bug.
Thanks.
2018-08-23 14:13:48 +02:00
ailin-nemui
b2a429bfb4 update line cache on switching wcwidth implementation 2018-08-23 14:03:53 +02:00
ailin-nemui
3ef0b9b3d0 move "auto" to default instead 2018-08-23 14:03:16 +02:00
ailin-nemui
b95ce3e812 add julia's utf8proc wcwidth implementation 2018-08-23 13:23:35 +02:00
dequis
24f1ed7edb irc-cap: Don't show warning on CAP LIST response 2018-08-23 03:22:30 -03:00
dequis
0d8632943d Add a wrapper of wcwidth() that picks the best implementation
This adds a i_wcwidth() function that replaces mk_wcwidth(), and a
'wcwidth_implementation' setting to pick which one it wraps.

Values:

- old: uses our local mk_wcwidth() which implements unicode 5.0
- system: uses the libc-provided wcwidth(), which may be better or worse
  than ours depending on how up to date the system is.
- auto: tests the system one against two characters that became
  fullwidth in unicode 5.2 and 9.0 respectively. If either of them pass,
  pick the system implementation, otherwise pick ours.

It defaults to auto.

mk_wcwidth() is still preferable in some cases, since the way it uses
ranges for fullwidth characters means most CJK blocks are covered even
if their characters didn't exist back then.

The "system" implementation is also wrapped to never return -1, but to
assume those unknown characters use one cell. Quoting the code:

    /* Treat all unknown characters as taking one cell. This is
     * the reason mk_wcwidth and other outdated implementations
     * mostly worked with newer unicode, while glibc's wcwidth
     * needs updating to recognize new characters.
     *
     * Instead of relying on that, we keep the behavior of assuming
     * one cell even for glibc's implementation, which is still
     * highly accurate and less of a headache overall.
     */
2018-08-23 02:30:26 -03:00
ailin-nemui
af1e4d6e34 initialise the line to zeros 2018-08-21 09:21:23 +02:00
ailin-nemui
a19b503a31 properly record line info on empty lines 2018-08-21 00:31:12 +02:00
Joseph Bisch
4f5f62ac63 Add server-fuzz to fe-fuzz
Based on test-796.c in the tests directory.
2018-08-15 11:11:09 -04:00
ailin-nemui
817179a760
Revert "Flag topic as unset if it is zero length" 2018-08-13 14:43:25 +02:00
Lukas Waymann
7d3eb47ab5 Fix potential rename(3) across file systems
Make sure the temporary file in the `config_write` function is created
on the same file system as the file we `rename` it to later.
2018-08-12 10:55:47 +00:00
Lukas Waymann
764f8215a9 Fix /save replacing symlinks with regular files
A side-effect of 8deb618 is that `/save` may replace configuration files
that are symlinks with regular files.  Fix this by resolving all
symlinks before renaming the temporary file.
2018-08-12 07:22:14 +00:00
David Phillips
10f6326649 Redraw on SIGWINCH when screen size hasn't changed
Some programs and users send SIGWINCH as a request for the client to redraw
in the event of session detachment/reattachment (e.g. abduco). A well-formed
terminal will only send SIGWINCH when the window size has changed, so there
is no need to optimise this case out.
2018-08-06 14:58:56 +12:00
Doug Freed
f3909b8bcb
core/ignore: fix #900 2018-08-03 17:07:06 -04:00
ailin-nemui
0c94d44f52
Merge pull request #892 from dwfreed/fix-ignore-flags
core/ignore: fix ignore_match_level handling of flag levels
2018-08-02 13:42:24 +02:00
ailin-nemui
ffd7ecc8bf
Merge pull request #897 from horgh/horgh/topic-unset
Flag topic as unset if it is zero length
2018-07-31 09:34:15 +02:00
dequis
b114b11e36 channel_change_topic: change one strlen == 0 to *str == '\0' 2018-07-30 23:45:56 -03:00
ailin-nemui
c7e50f48e5
Merge pull request #886 from vague666/set_item_format
remove = from format because people get confused by it
2018-07-25 11:32:06 +02:00
Will Storey
15840ac27b If we receive a 0 length topic, record it as unset
Fixes #888.

Previously we showed that there was a topic set when using /topic, just
an empty one. This was different than how we show such topics when
initially joining a channel. Now we say that the topic is unset in both
cases.
2018-07-24 18:45:22 -07:00
Will Storey
0e187cf9cf Fix typo in comment 2018-07-24 18:29:31 -07:00
Janik Rabe
4f45828ff3
Keep errstr set to NULL if errno is not set
Don't use errno if it is not set and show the default error message
instead. This prevents messages like "SSL handshake failed: Success"
from being shown.
2018-07-18 21:12:38 +03:00
Doug Freed
d84a24444f core/ignore: fix ignore_match_level handling of flag levels 2018-06-29 09:00:38 -04:00
vague666
1ab679bf32 remove = from format because people get confused by it 2018-06-14 20:07:43 +02:00
vague666
ba2554dd14 missing space 2018-06-09 05:55:25 +02:00
vague666
d2e1caf720 simplifying code 2018-06-07 15:17:46 +02:00
vague666
1547248e94 simplify code 2018-06-06 11:03:44 +02:00
vague666
ac3af3fb56 these were bitflags 2018-06-06 10:00:38 +02:00
vague666
db3b671328 Added HIDDEN level to ignores 2018-06-05 15:29:40 +02:00
ailin-nemui
631650bd8a
Revert "record line info on empty lines" 2018-05-07 21:22:43 +02:00
ailin-nemui
e19d6ee219
Merge pull request #873 from ailin-nemui/empty_lines
record line info on empty lines
2018-04-24 13:58:25 +02:00
ailin-nemui
0caf884e92
Merge pull request #871 from dequis/atomic-config-write
Make config_write more atomic to prevent truncation when out of space
2018-04-24 13:58:15 +02:00
ailin-nemui
34b31e8451 record line info on empty lines 2018-04-16 16:22:04 +02:00
dequis
8deb6182c6 Make config_write more atomic to prevent truncation when out of space
This is modeled after glib's g_file_set_contents. It doesn't use that
function directly because the writing is done with GIOChannel
streaming-like writes and g_file_set_contents expects the whole thing to
be in-memory.

Main differences with g_file_set_contents:

- complete lack of win32 special casing (cygwin/WSL should work though)
- no fallocate() (linux only, but we don't know the size upfront, anyway)
- always calls fsync (glib skips it on btrfs or when not overwriting)

Other than that, it's the same old mkstemp + fsync + rename.
2018-04-08 15:52:09 -03:00
dequis
d0151fd5a2 Add fe-cap to show messages for CAP-related events in the UI
Replaces cap.pl
2018-04-08 01:26:11 -03:00
dequis
af5ee997e7 Add "server cap req" signal, emitted before requesting caps 2018-04-08 01:24:48 -03:00
ailin-nemui
b2b1ac6708
Merge pull request #866 from ailin-nemui/reconnects
This is a simple change which might fix #130

The lookup_servers are also disconnected if the lookup/SSL handshake doesn't succeed in time. I'm not perfectly sure if this is the master fix but it does seem to be an issue that servers can be stuck in lookup, especially for SSL. See the issue for a reproducer
2018-04-06 10:50:58 +02:00
ailin-nemui
8bf2162053
Merge pull request #858 from ailin-nemui/sbar
change the statusbar commands so that no accidential status bars are created
2018-04-02 08:36:53 +02:00
ailin-nemui
0c1db8f2ae
Merge pull request #854 from irssi/ahf/otr
OTR support, take 2
2018-03-31 13:04:35 +02:00
dequis
4501917cae otr: rename module.c to otr-module.c 2018-03-31 01:46:34 -03:00
ailin-nemui
c08685a1a3 also reconnect lookup_servers 2018-03-29 23:24:13 +02:00
ailin-nemui
a3b9e2370f up abi 2018-03-29 22:00:40 +02:00
dequis
7d7c6975ed otr: add target param to the unencrypted 'message private' signal
Same case as the previous commit.
2018-03-28 23:36:03 -03:00
dequis
dd7dc7ca7d otr: fix missing 'target' param in 'message private' signal
Fixes warnings like these on '/msg yourself'

-!- Irssi: critical privmsg_get_query: assertion 'nick != NULL' failed
-!- Irssi: critical query_find: assertion 'nick != NULL' failed
2018-03-28 23:06:47 -03:00
dequis
b52cf1015e otr: add KEY_GEN_STARTED state to avoid starting it twice
Fun race condition there, got this when testing with the jabber
xmlconsole open in bitlbee
2018-03-28 22:40:17 -03:00
Dorian Harmans
17920ab5aa Merge remote-tracking branch 'upstream/master' 2018-03-26 22:50:54 +02:00
ailin-nemui
7fc59d2d10
Merge pull request #862 from ailin-nemui/line_is_null
fix a crash when trying to append to a NULL line
2018-03-26 12:46:04 +02:00
Dorian Harmans
25a44dacf4 fix build with LibreSSL 2.7.0 2018-03-23 21:35:35 +01:00
ailin-nemui
138eca0749 fix build 2018-03-20 18:13:26 +01:00
ailin-nemui
ee04cd503f add disabled txt 2018-03-20 17:59:11 +01:00
ailin-nemui
977c2c0a0d refactor common parts 2018-03-20 17:53:03 +01:00
ailin-nemui
501c150ec2 make new status bar actually work 2018-03-20 17:39:08 +01:00
ailin-nemui
7d99ff05cd
Merge pull request #803 from ailin-nemui/bug-796-test
Postpone server cleanup until after unref
2018-03-20 10:30:01 +01:00
ailin-nemui
6ffbd0ab54
Merge pull request #859 from ailin-nemui/delkeys
make default keybinds deletable
2018-03-19 16:23:27 +01:00
ailin-nemui
c8191b3315 abi bump 2018-03-19 10:35:42 +01:00
ailin-nemui
61c58b7690 actually check which of add or modify was called 2018-03-19 10:35:39 +01:00
ailin-nemui
d845ee7361 change the statusbar commands so that no accidenal status bars are created 2018-03-19 09:59:22 +01:00
ailin-nemui
c7ca8102c0 fix a crash when trying to append to a NULL line
reported by @vague666
2018-03-17 13:36:38 +01:00
ailin-nemui
65a139aa9e move no window printing code 2018-03-16 12:54:15 +01:00
Alexander Færøy
8d07f52bae Add ABI check for otr_core module. 2018-03-15 14:01:50 +01:00
ailin-nemui
b7906b8706 in fact hidden levels should not be re-set when you run /set 2018-03-15 10:06:29 +01:00
ailin-nemui
7ec6c500b4 make default keybinds deletable 2018-03-12 17:46:26 +01:00
ailin-nemui
575daf4af7
Merge pull request #852 from dequis/document-cat-seek
Document second parameter (seek position) of /cat command
2018-03-10 13:11:39 +01:00
LemonBoy
76d958a87f More g_strcmp0 -> g_ascii_strcasecmp 2018-03-09 17:36:28 +01:00
LemonBoy
fb9f5174c2 Compare channels/networks fields case-insensitively
Fixes #856
2018-03-08 20:35:00 +01:00
Alexander Færøy
016b42baea Add OTR support.
This patch adds support for the OTR protocol to irssi. This is an import
of the external irssi-otr project that we are now taking over
maintership for.

Major thanks to the original authors of Irssi-OTR: Uli Meis and David
Goulet. Thanks to the OTR community in #OTR on OFTC, thanks to everyone
who have helped testing the patches and submitted UI suggestions.
2018-02-26 23:32:57 +01:00
dequis
097a9f4988 Document second parameter (seek position) of /cat command 2018-02-16 10:09:48 -03:00
ailin-nemui
203f6c5329 also unblock theme elements when processing finished 2018-02-16 13:46:29 +01:00
ailin-nemui
e289d34b9a limit alignment padding to a screenful
Credit to Oss-Fuzz
2018-02-14 15:04:24 +01:00
ailin-nemui
a6fcd5432e improve padding performance
Credit to Oss-Fuzz
2018-02-13 12:31:22 +01:00
ailin-nemui
c01f6df957
Merge pull request #844 from CatboxParadox/perms
dcc get shouldn't fail when file attrs can't be changed
2018-02-13 11:10:21 +01:00
Nei
b0d9cb33cd Merge branch 'security' into 'master'
Security

See merge request irssi/irssi!34
2018-02-13 09:51:22 +00:00
Staron, Martin
3cbcb4fe85 dcc get shouldn't fail when file attrs can't be changed 2018-02-13 08:15:39 +01:00
ailin-nemui
5c5ed64180 try to make sure the server is still good enough to call ischannel when printing netsplit/join 2018-02-09 13:02:00 +01:00
ailin-nemui
946876b1e9
Merge pull request #843 from ailin-nemui/glib238
restore compat with glib <2.40
2018-02-09 11:49:23 +01:00
ailin-nemui
16912e1a91 restore compat with glib <2.40 2018-02-08 14:41:08 +01:00
ailin-nemui
e32e9d63c6 Do not read beyond end of escaped string
Credit to OSS-Fuzz
2018-02-08 14:11:23 +01:00
ailin-nemui
02712942e0
Merge pull request #835 from ailin-nemui/theme-stack
protect theme recursion
2018-02-07 21:23:39 +01:00
ailin-nemui
1e6d787401 ensure cap_supported is existent yet 2018-02-07 11:07:22 +01:00
Nei
12483c688a Merge branch 'sasl-timeout' into 'security'
Fix Sasl timeout error

See merge request irssi/irssi!33
2018-02-06 06:46:11 +00:00
Nei
a73659e0ea Merge branch 'soperise' into 'security'
Soperise

See merge request irssi/irssi!32
2018-02-06 06:45:54 +00:00
Nei
41e2b535ef Merge branch 'nonick' into 'security'
please give us nicks

See merge request irssi/irssi!31
2018-02-06 06:45:32 +00:00
ailin-nemui
f8fbc1e1ab
Merge pull request #775 from LemonBoy/caps_kv
CAP 3.2 support
2018-02-05 22:29:35 +01:00
ailin-nemui
8183180613
Merge pull request #764 from GinjaNinja32/colorful-input
Add color support for input bar
2018-02-05 22:28:08 +01:00
ailin-nemui
cfcc021c81
Merge pull request #824 from dequis/more-netsplit-revert
Revert more of the netsplit print optimisation to fix crashes
2018-02-05 22:26:32 +01:00
ailin-nemui
3c1bc5f916
Merge pull request #836 from ailin-nemui/resize
Fix resizing of windows when used incorrectly
2018-02-05 22:25:33 +01:00
ailin-nemui
442f6f08b4
Merge pull request #837 from ailin-nemui/no-show
check the error condition of mainwindow_create
2018-02-05 22:24:17 +01:00
ailin-nemui
b33ce255a9 check for negative bound 2018-02-04 11:34:20 +01:00
ailin-nemui
c25e122149
Merge pull request #822 from Manishearth/autocomplete-colon
Insert colons after completing nicks preceded by a list of other autocompleted nicks
2018-02-04 11:28:25 +01:00
ailin-nemui
9c494a88a3
Merge pull request #831 from ailin-nemui/openssl-x509
Do not use X509_STORE on OpenSSL < 1.0.2
2018-02-04 11:27:02 +01:00
ailin-nemui
2185c4ddb3 up abi 2018-02-03 23:19:27 +01:00
ailin-nemui
9072e98819 change color -> extents (malloc based) 2018-02-02 13:56:56 +01:00
ailin-nemui
84f03e0146 do not reuse sasl timeout 2018-02-02 11:43:23 +01:00
ailin-nemui
5b5bfef035 check the error condition of mainwindow_create 2018-02-02 10:05:37 +01:00
ailin-nemui
f0bd434eb0 stop the madness 2018-02-02 09:50:08 +01:00
ailin-nemui
4c662acf95 another replaces fix
Credit to OSS-Fuzz
2018-02-01 14:19:40 +01:00
ailin-nemui
12360fb2c0 protect theme recursion 2018-02-01 10:21:31 +01:00
ailin-nemui
8028dcff93
Merge pull request #830 from g-elfling/master
Add Shift-Tab completion to gui-readline
2018-01-30 11:20:40 +01:00
ailin-nemui
126189bb37 we probably should not try to replace replaces
Credit to OSS-Fuzz
2018-01-29 09:28:55 +01:00
dequis
a4f99ae746 Revert more of the netsplit print optimisation to fix crashes
Now iterating over all servers to avoid crashes on server_ischannel(),
which is a macro for server->ischannel(), so it dies horribly when it's
null. Doesn't help that IS_IRC_SERVER() always returns true on null.
2018-01-28 23:06:26 -03:00
ailin-nemui
0909d47e5b Check that server is still existent when using /oper 2018-01-25 16:11:31 +01:00
ailin-nemui
e91da9e409 please give us nicks 2018-01-25 16:05:47 +01:00
Ailin Nemui
af087e1103 fix sequence error 2018-01-25 15:08:26 +01:00
Ailin Nemui
f5aa829bd0 Do not use X509_STORE on OpenSSL < 1.0.2 2018-01-25 15:01:55 +01:00
Niklas Luokkala
6dfe5bc836 modified gui-readline based on the suggestions made to the pull request 2018-01-24 22:12:09 +02:00
LemonBoy
260733475c Accept CAPs with an empty value (KEY=) 2018-01-24 10:55:20 +01:00
LemonBoy
b0b40be82e Deprecate gslist_remove_string
It is not used anymore and it leaks memory.
2018-01-24 10:47:40 +01:00
LemonBoy
474ee8ee70 Address some minor stylish nits 2018-01-24 10:45:54 +01:00
Niklas Luokkala
0ba1b1f2a4 removed unnecessary repetition 2018-01-24 01:49:28 +02:00
Niklas Luokkala
d14dbbd093 Add Shift-Tab completion to gui-readline 2018-01-24 00:15:29 +02:00
Manish Goregaokar
12d08f79bb Insert colons after completing nicks preceded by a list of other autocompleted nicks
When pinging two people, typing `nick1<tab> nick2<tab> message` for
autocompletion will get you `nick1: nick2 message`, which is kinda
confusing.

We only insert the colon after the first autocompleted nick,
because if a nick is used in the middle of the sentence it's mentioning
the person but not targeting the message at them.

However, this breaks down when we try to ping a list of people. There
should be a colon in front of each separating the names from the
message. only having a colon at the end of the nick list works too,
but it seems like the IRC convention is to just use multiple colons.

This patch makes it so that autocompleting a nick after a list of
existing autocompleted nicks at the beginning of the message
will include a colon.
2018-01-20 10:25:06 +05:30
GinjaNinja32
0f1b3873fe Don't accept pos<0 or len<0 in gui_entry_set_color 2018-01-18 10:08:00 +01:00
GinjaNinja32
13b93c8c05 Apply changes based on review feedback 2018-01-18 10:08:00 +01:00
GinjaNinja32
925ae6e6ad Add color support for input bar 2018-01-18 10:08:00 +01:00
Zero King
d983ad1a87 Update Irssi website URLs 2018-01-16 15:23:54 +00:00
Joseph Bisch
182673ed05 Add theme_load to fe-fuzz 2018-01-15 11:59:01 -05:00
Joseph Bisch
4512e2683a
Merge pull request #780 from josephbisch/fuzz-event-get-params
Add event_get_params to fe-fuzz
2018-01-15 10:53:21 -05:00
ailin-nemui
fa8508404f revert netsplit print optimisation
this reverts part of #465

unfortunately we need to further refine the initial patch

 - when filtering by channel, the whole split is cleaned up nevertheless
 - something similar happens for the netjoins
 - furthermore, we cannot wait only for PUBLIC msgs, j/p/q are equivalently relevant for temporal integrity
2018-01-10 20:12:04 +01:00
Jari Matilainen
4041f29711 Changed spaces to tab 2018-01-09 23:16:26 +01:00
Jari Matilainen
f2e73a7046 Add perl access to hidden_level in TEXT_BUFFER_VIEW_REC 2018-01-09 23:15:08 +01:00
ailin-nemui
a6663c58d4
Merge pull request #697 from ailin-nemui/rsplit
sideways split support for Irssi
2018-01-08 12:20:20 +01:00
ailin-nemui
f83ba5a5bb
Merge pull request #779 from vague666/activity_hide_target_only_channels_v2
Allow selection of what kind of activity targets to ignore v2
2018-01-08 12:19:46 +01:00
ailin-nemui
2e0815bfd7
Merge pull request #726 from dequis/term-environment-check
Add a startup warning if the TERM var is wrong inside tmux/screen
2018-01-08 12:19:30 +01:00
ailin-nemui
063c85da6c
Fix space in message 2018-01-07 20:01:00 +01:00
LemonBoy
fed791ed91 Fix a problem with multiline responses
Do not clear the whole table every time a response is received.
2018-01-07 12:36:21 +01:00
LemonBoy
4b9fcbc15a Nicer error message when a duplicate CAP in LS 2018-01-07 12:36:21 +01:00
LemonBoy
f3a5355648 Match LS instead of checking the first letter only 2018-01-07 12:36:21 +01:00
LemonBoy
6c45ab0493 Command names may be in lower-case
Do not take the string case into account when comparing the command
name.
2018-01-07 12:36:20 +01:00
LemonBoy
c00132ac4c Simplify the code
Early exit, simpler code.
2018-01-07 12:36:20 +01:00
LemonBoy
9160ddaffd Keep processing the CAPs on error
If an invalid CAP is found we keep going by parsing the next one.
2018-01-07 12:36:20 +01:00
LemonBoy
cd107deb46 Prevent a memory leak
When a CAP DEL is received the key/val pair is not stored in the
hashtable at all so just free them when we're done.
2018-01-07 12:36:20 +01:00
LemonBoy
74409aa850 Miscellaneous fixes
Stylistic stuff, please ignore.
2018-01-07 12:36:20 +01:00
LemonBoy
f683e81880 Prevent a NULL pointer deference
Always create the cap_supported table when a CAP event is received.
2018-01-07 12:36:20 +01:00
LemonBoy
432368bdc6 Use strcmp instead of g_strcmp0
There's no need to use the latter.
2018-01-07 12:36:19 +01:00
LemonBoy
cfc8c9f8e2 Properly dispose the GSList chains
We forgot to free the link and the data, oops.
2018-01-07 12:36:19 +01:00
LemonBoy
f4d811ddf5 Handle CAP {ADD,DEL} from cap-notify
This is the last piece of the puzzle.
2018-01-07 12:36:19 +01:00
LemonBoy
8c87766132 Parse multiline responses to CAP LS
The parsing logic isn't too elegant because of the optional parameter
used for signaling if a response has a continuation one.
2018-01-07 12:36:19 +01:00
LemonBoy
57827ca743 Don't free the hash table if there's none
Glib doesn't like that and shows a harmless warning.
2018-01-07 12:36:18 +01:00
LemonBoy
d21706e1cc Factor out the parsing function
This is also needed for CAP NEW and CAP DEL.
2018-01-07 12:36:18 +01:00
LemonBoy
98836f8b7e Parse the K/V form in CAP LS
This is a prerequisite for the IRC v3.2 compliance.
2018-01-07 12:36:18 +01:00
ailin-nemui
0d5e353ef1
Reword warning message
Include multiplexer name in TERM recommendation
2018-01-07 11:43:13 +01:00
ailin-nemui
d85f867261
Merge pull request #805 from ailin-nemui/exec-empty
fix /exec -o for blank lines
2018-01-07 11:24:00 +01:00
ailin-nemui
e7cce90ec0
Merge pull request #804 from ailin-nemui/patch-1
handle an already used nick different from the one we send
2018-01-07 11:23:42 +01:00
ailin-nemui
e75ee2f74c
Merge pull request #746 from ailin-nemui/hide-lines
Add method to hide lines in a view
2018-01-07 11:23:22 +01:00
dequis
f9c8365999 fe-common-core: fix redeclaration of server_tag_len 2018-01-07 01:45:12 -03:00
dequis
0aafd011c0 Add a startup warning if the TERM var is wrong inside tmux/screen
One of the most common and confusing issues we get in #irssi,
this should help identifying and mitigating it.
2018-01-06 18:04:01 -03:00
ailin-nemui
121a4971e6
Update fe-common-core.c
fix mixed decls
2018-01-06 20:17:51 +01:00
ailin-nemui
4d5982f07d
Update fe-common-core.c 2018-01-06 20:02:31 +01:00
ailin-nemui
ded4e4d98d fix redraw 2018-01-06 01:05:35 +01:00
ailin-nemui
63d8e884dd fix some more 2018-01-06 00:26:48 +01:00
ailin-nemui
4e71a1f485 sideways split support for Irssi
warning:

* may be buggy

This commit adds support for sideways splits into Irssi. To that regard,
there are a number of new commands available

the "R" commands:
	/window new rsplit - make a new sideways split
	/window rshow - show an existing window to the right
	/window rgrow/rshrink/rsize/rbalance
	 - manipulate the size of your sideways split windows

the "D" commands:
	/window dup/ddown/dleft/dright
	 - navigate the windows directionally, as an alternative to
	   /window up/down that you can bind to some key
	/window move dleft/dright - the same for moving

Enjoy!
2018-01-06 00:26:48 +01:00
ailin-nemui
451019d05d make format_real_length left-collecting 2018-01-06 00:26:48 +01:00
ailin-nemui
6e6a96d8c1 fix uaf in signal path 2018-01-06 00:02:48 +01:00
ailin-nemui
b111f038dd fix /exec -o for blank lines
since it is not allowed to send nothing, instead of spamming the status window
with error, send " " instead

Fixes FS#902
2018-01-05 23:19:06 +01:00
ailin-nemui
eb18904840 fix crash in notifylist 2018-01-05 22:13:23 +01:00
ailin-nemui
3c7185c5ad
Update irc-nicklist.c
move altnick check before the nick correction code
2018-01-05 00:38:54 +01:00
Nei
7bed781622 Merge branch 'fix-gl-20' into 'security'
do not record topic change time when sender is blank

See merge request irssi/irssi!25
2018-01-04 22:19:39 +00:00
Nei
f5c3995fea Merge branch 'fix-gl-21' into 'security'
check if \\c is complete in eval

See merge request irssi/irssi!26
2018-01-04 22:19:34 +00:00
Nei
94f0cbe34a Merge branch 'fix-gl-19' into 'security'
rewrite completion code and check for direct match of separator

See merge request irssi/irssi!27
2018-01-04 22:19:29 +00:00
ailin-nemui
c9b3d87eb7 Postpone server cleanup until after unref
Add a new signal, server destroyed, that is supposed to run the clean up
tasks of server disconnected. This is so that some structures will stay
around longer.
2018-01-04 23:04:12 +01:00
ailin-nemui
cc17837a9b disable variable arguments code 2018-01-03 15:51:51 +01:00
ailin-nemui
2361d4b1e5 rewrite completion code and check for direct match of separator 2018-01-03 15:35:18 +01:00