The python plugin use weak references for hooks, which might let a
necessary object disappear if the callback of a timer hook unhooks
itself.
Signed-off-by: Celelibi <celelibi@gmail.com>
Python sometime calls flush() on sys.stdout or sys.stderr.
In particular, it might do so when an exception is raised. This fixes
the second error message that was generated in such cases.
Signed-off-by: Celelibi <celelibi@gmail.com>
will allow the user to control on which of the shortcuts to create:
* start menu - will now show the relevant window
* desktop
* quick launch
on uninstall, all will be removed on uninstall
Since commit 747a52aae8 users have to
opt-out of using SSL when creating a new server. This commit makes
it so /SERVER also uses SSL by default.
In order to connect insecurely users must now use one of these
methods:
/SERVER -insecure irc.example.com
/SERVER irc.example.com -6667
The `-ssl` flag and the `+port` syntax have been retained for compat
reasons.
So far, when configuring multiple spell check languages, Hexchat
requires the user to separate multiple entries with commas and
only commas. This patch allows users to also enter whitespace, e.g.
de_DE, en_US
as is common in many applications.
Previously the function signature was inconsistent throughout
src/fe-gtk/plugin-notification.{h,c}: One file had the signature
int(void), while the other had int(void *). Since this type mismatch
might lead to problems (especially with LTO) and the (possibly provided)
function argument isn't used in the function's definition, this commit
sets int(void *) as function signature for both the declaration and
definition of the function.
Fixes: https://github.com/hexchat/hexchat/issues/2726
This solves the issue where the parent dialog is closed and then
the child dialog is used.
This is however only a partial fix:
- Many other dialogs throughout the codebase do not currently have
parent windows and need to be refactored.
- Not all window managers respect modal so users can still trigger
bugs. We can be more defensive against this but it requires more
refactoring.
Closes#2686
hexchat populates the single linked list `notify_list` defined in
`src/common/notify.c` from `notify.conf` file. Each new line read from
the file is added to the list by `g_slist_prepend()` which adds it to
the front of the list. But in `notify_save()` the list elements are read
from the start to end of the list and written to the `notify.conf`. This
means everytime hexchat is opened and closed, the contents of
`notify.conf` get reversed. This commit creates a
temporary glist in `notify_save()` and applies `g_slist_reverse()` on it
and writes the contents of this reversed list to `notify.conf`. And
solves issue #2680
added two flags to EXECWRITE and cmd_execw
-q : (quiet) to allow suppressing of additional (debug) output at the text box
-- : (stop parsing for further flags) for the edge cases where -q itself migh be part of used data and the user wants to show that at the text box
Closes#2666
Instead of wrapping around, which is not behaviour any reasonable
user would expect, just use the default port if above 65535.
Disallow connecting on port 0. This port has special meaning and
servers can not listen on it. It is more likely the user just
gave an invalid value to the port field as atoi("invalid") == 0.