Sébastien Helleu
3a629e08fa
api: fix file descriptor leak in hook_url ( closes #2284 )
...
This can happen after a timeout or if the hook is removed during the transfer.
2025-11-15 20:15:16 +01:00
Sébastien Helleu
1c73310dd1
core: set max version for Curl symbol CURLOPT_KRBLEVEL
2025-11-15 17:47:18 +01:00
Sébastien Helleu
323f80e914
core: add option weechat.completion.partial_completion_auto_expand ( closes #2253 )
2025-06-30 18:52:58 +02:00
Sébastien Helleu
6d45a69f39
core: set max version for Curl symbol CURLOPT_SSL_FALSESTART
2025-06-21 20:30:05 +02:00
Sébastien Helleu
34f2e6cdd0
core: add script name in output of /debug hooks <plugin>
2025-06-08 16:36:46 +02:00
Albert Lee
7fb3ca6686
core: always define _XPG4_2 and __EXTENSIONS__ on Solaris/illumos
2025-05-25 09:06:51 +02:00
Albert Lee
69d3787b5e
core: improve support for non-macro htonll and htobe64
2025-05-25 09:03:48 +02:00
Albert Lee
d7b26e88b8
core: include pthread.h for pthread types
2025-05-22 21:02:53 +02:00
Sébastien Helleu
927a50e366
core, plugins: replace "%p" by "%lx" in calls to sscanf
2025-05-18 22:17:29 +02:00
Sébastien Helleu
d0c00f7db2
Revert "core, plugins: replace "%lx" by "%p" in calls to sscanf"
...
This reverts commit e64ab3c675 .
This was causing incorrect conversion of strings "0x..." to pointers on systems
like Solaris/illumos.
And as a side effect, buffers were sometimes empty in weechat relay clients
like glowing-bear.
2025-05-18 22:17:16 +02:00
Sébastien Helleu
8106db400d
core: add support of specifier %@ for UTC time in function util_strftimeval
2025-05-18 22:15:06 +02:00
Sébastien Helleu
7b674c2618
core: add extra checks in function eval_string_range_chars
...
This is done in addition to changes made in commit
d475c16671 to fix the buffer overflow, caused by
the call to function utf8_next_char.
2025-05-11 10:26:17 +02:00
Sébastien Helleu
d475c16671
core: fix buffer overflow in function utf8_next_char and return NULL for empty string
...
Now the function utf8_next_char with an empty string returns NULL instead of
the next char, which is most of the time after an allocated buffer.
And the function utf8_char_size with an empty string now returns 0 instead of
1.
This indirectly fixes a buffer overflow in function eval_string_range_chars
when the input string is empty (for example when doing `/eval -n ${chars:}`).
2025-05-10 20:53:04 +02:00
Sébastien Helleu
6ecd9e66bf
core: fix buffer overflow in function eval_string_base_encode
2025-05-10 15:28:41 +02:00
Sébastien Helleu
9d37159a6b
core: use dynamic string in function string_replace_with_callback
2025-05-10 15:26:12 +02:00
Sébastien Helleu
aa54d3653c
core: fix buffer overflow in function eval_syntax_highlight_colorize
2025-05-10 15:26:09 +02:00
Sébastien Helleu
1d808a1f1c
core: fix buffer overflow in function util_parse_time
2025-05-08 19:09:18 +02:00
Sébastien Helleu
2bc290b6ed
core: fix integer overflow and return "unsigned long" in function util_version_number
2025-05-08 18:45:39 +02:00
Sébastien Helleu
f6cace609c
core: fix memory leak in function util_parse_delay
2025-05-08 18:12:11 +02:00
Sébastien Helleu
d74fc99fe1
core: write configuration files on disk only if there are changes ( closes #2250 )
2025-05-07 20:44:54 +02:00
Sébastien Helleu
51d24fd2da
api: add function file_compare (issue #2250 )
2025-05-07 20:44:48 +02:00
Sébastien Helleu
ca6035f754
core: fix integer overflow in base32 encoding/decoding
2025-05-05 20:43:21 +02:00
Sébastien Helleu
5b4820ab06
core: fix integer overflow with decimal numbers in calculation of expression
2025-05-05 20:25:41 +02:00
Sébastien Helleu
ceb6a007ff
core: add missing empty line
2025-05-05 13:18:35 +02:00
Sébastien Helleu
0e777fef4e
core: update example in /help key
2025-04-25 18:12:59 +02:00
Sébastien Helleu
41f96c6494
core: fix write of weechat.log to stdout with weechat-headless --stdout ( closes #2247 )
2025-04-15 08:11:39 +02:00
Sébastien Helleu
d0babe8679
core: add refresh of window title on buffer switch, when option weechat.look.window_title is set
2025-04-11 19:30:32 +02:00
Sébastien Helleu
2475f20cb7
all: move description of C files below the copyright and license
2025-03-31 11:47:49 +02:00
Sébastien Helleu
3a6ac9ee76
all: add SPDX license tag
2025-03-31 07:49:26 +02:00
Sébastien Helleu
d8987a1678
all: replace Copyright lines by SPDX copyright tag
2025-03-30 14:47:12 +02:00
Sébastien Helleu
ca22e49041
core, irc: replace "long" by "long long" to store seconds in timeval structure
2025-03-16 14:05:11 +01:00
Sébastien Helleu
764b309e92
core, irc, relay: fix formatting of seconds and microseconds
2025-03-16 14:04:28 +01:00
Sébastien Helleu
c0402bce52
core: fix formatting of microseconds in function util_strftimeval
2025-03-16 14:01:04 +01:00
Sébastien Helleu
9fe5fa23a0
core: convert "long long" to "unsigned long long" in functions util_get_microseconds_string and util_parse_delay
2025-03-16 11:13:25 +01:00
Aaron Jones
f5038bccbc
Fix function prototypes for list of arguments
...
At the moment, building WeeChat triggers several thousand -Wstrict-prototypes
diagnostics. This is due to its source code using an empty argument list for
functions and function pointers that take no arguments, instead of explicitly
declaring that they take no arguments by using a void list.
This commit replaces all empty argument lists with a void list.
Note that Ruby's headers also suffer the same problem, which WeeChat can't
do anything to fix. Thus, building WeeChat with the Ruby plugin enabled
will still issue approximately 30 such diagnostics.
2025-03-10 08:16:52 +01:00
Sébastien Helleu
68d452b559
core: improve help on option weechat.completion.nick_ignore_words
2025-03-09 08:26:09 +01:00
Sébastien Helleu
2e570c599b
core: add option weechat.completion.nick_ignore_words ( closes #1143 )
2025-03-03 08:27:22 +01:00
Sébastien Helleu
8280a3b65b
api: return input string in function string_iconv_from_internal when current locale is wrong
...
This fixes a bug when writing configuration files with a wrong locale: now
UTF-8 is kept and written in files instead of string converted using a wrong
charset.
2025-03-01 16:44:22 +01:00
Sébastien Helleu
d3a9e4e74b
core: add extra check of string length on whitespace char options
2025-02-15 20:59:22 +01:00
Sébastien Helleu
091a17b138
core: keep spaces at the end of some command arguments
...
The following commands are now preserving trailing spaces in arguments
received: allbuf, command, eval, mute, pipe, print, quit, repeat, wait.
2025-02-15 20:54:24 +01:00
Sébastien Helleu
e89d6d69ad
api: add property keep_spaces_right in function hook_set to keep trailing spaces in command arguments
2025-02-15 20:54:24 +01:00
Sébastien Helleu
3c9eb6dcac
core: add option whitespace in command /debug ( closes #947 )
...
New options are added to configure the chars displayed for spaces and
tabulations:
- weechat.look.whitespace_char: char for spaces
- weechat.look.tab_whitespace_char: first char for tabulations
2025-02-15 20:54:14 +01:00
Sébastien Helleu
6388d36858
core: remove unnecessary null check
2025-02-11 21:38:24 +01:00
Sébastien Helleu
547e2b934e
core: update copyright dates
2025-02-01 23:13:18 +01:00
Sébastien Helleu
daef5971ae
core: add option -color in command /pipe
2025-02-01 09:37:22 +01:00
Sébastien Helleu
4b7be27028
core: add parameter name in signal handler functions
2025-01-26 08:49:15 +01:00
LuK1337
68c70e5538
core: add int arg for all sigaction.sa_handler functions
...
src/gui/curses/gui-curses-main.c: In function ‘gui_main_loop’:
src/gui/curses/gui-curses-main.c:399:33: error: passing argument 2 of ‘signal_catch’ from incompatible pointer type [-Wincompatible-pointer-types]
399 | signal_catch (SIGWINCH, &gui_main_signal_sigwinch);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
| |
| void (*)(void)
In file included from src/gui/curses/gui-curses-main.c:38:
src/gui/curses/../../core/core-signal.h:33:46: note: expected ‘void (*)(int)’ but argument is of type ‘void (*)(void)’
33 | extern void signal_catch (int signum, void (*handler)(int));
| ~~~~~~~^~~~~~~~~~~~~
2025-01-26 08:46:04 +01:00
Sébastien Helleu
b53f3c2db8
core: add tags of lines in hsignal sent with command /pipe
2025-01-25 17:06:10 +01:00
Sébastien Helleu
36b62cfc5e
core: add option -v to display upgrades in command /version
...
The number of upgrades is also displayed on startup after at least one
`/upgrade`.
2025-01-07 20:35:35 +01:00
Sébastien Helleu
80ca209e70
Revert "core: check "weechat" binary with command /upgrade"
...
This reverts commit d665e2d489 .
The fix is not working when WeeChat is not executed with an absolute path.
2025-01-07 17:37:07 +01:00