Since hexchat already depends on GLib, it's better to use GProxyResolver
instead. This might use libproxy, or not, as appropriate.
P.S. This removes a memory safety issue because proxy_list is allocated
using malloc(), not g_malloc(), and therefore using g_strfreev() is
incorrect. The proper way to free the proxy list returned by libproxy
is to use px_proxy_factory_free_proxies() (but nobody does that because
it was added in libproxy 0.4.16, which is somewhat recent).
Some strings using the macro cannot be translated in the right way,
because PO files are made by source code instead of compile-time code.
The macro is actually translated while compilation and therefore it
causes the issue, #2275.
To fix the issue, use UTF-8 hex code instead of it.
Fixes#2275
- Combine the three properties into a single one
- Finally fully fix the handling with plugins handling events
TODO: Look into lastact handling of these, seems wrong
This allows us to omit the lagometer timer in the event that it is not
enabled, bringing the baseline wake-up rate down to 1Hz from 2Hz, which
could bring considerable power savings on mobile devices.
- Properly use filesystem encoding
- Validate utf8 when loading (hopefully fixing crashes)
- Use Gio
- Handle Windows line endings
- Remove dead code
- Fix respecting max length of scrollback files
They're process-level functions and aren't meant to be called from DLLs. CoInitSecurity in particular fails with RPC_E_TOO_LATE even if no other call to CoCreateInstance has been made yet.
Fixes sysinfo's WMI calls on Windows 8.1 and above.
- Handle server lines that contain sequences which are invalid in the server encoding. Previously, these would cause the whole line to be interpreted in ISO-8859-1, but now they're simply replaced with an appropriate replacement character.
- Removed prefs.utf8_locale.
- Change default server encoding from system locale to UTF-8.
- Always populate server->encoding with a non-null value - UTF-8.
Fixes#1198
- Removes need to check for malloc failure
- Removes need for NULL checks on free
- Adds checks for integer overflows
- Removes some extra memset calls
- Removes chance of mixing libc and glib malloc/free
This is the C fix, unfortunately a proper fix, e.g.
removing the dependency on session_name all together is a much vaster
refactor outside the scope of this bugfix.
Closes#1111