1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-12 14:14:48 +02:00

Compare commits

...

30 Commits

Author SHA1 Message Date
Sébastien Helleu 14b8518ae2 Version 4.1.2 2023-12-03 19:17:25 +01:00
Sébastien Helleu 4dbae51568 core: add version 4.0.7 in ChangeLog and release notes 2023-12-03 19:12:59 +01:00
Sébastien Helleu 19a1b4145b irc: remove trailing "\r\n" in signals "irc_out" and "irc_outtags" when messages are queued 2023-11-26 18:57:21 +01:00
Sébastien Helleu f6912518b3 tests: add tests on IRC message 337 2023-11-07 21:59:22 +01:00
Sébastien Helleu 5115bebb27 irc: fix target buffer of IRC message 337 (whois reply: "is hiding their idle time") 2023-11-07 21:50:55 +01:00
Sébastien Helleu ceaaab3866 core: fix value of buffer variable "num_history" when the value defined in option weechat.history.max_commands is reached 2023-11-04 17:02:08 +01:00
Sébastien Helleu 4865087019 relay: close properly connection with the IRC client in case of server disconnection (issue #2038) 2023-11-04 09:05:39 +01:00
Sébastien Helleu 532f2ce683 core: remove incorrect warning when binding keys F10 to F20 (issue #2039) 2023-11-04 08:37:36 +01:00
Sébastien Helleu 67bcbf5256 core, plugins: set error to NULL before calling strtol()
This is not strictly necessary, just in case the function strtol() doesn't
update the pointer.
2023-11-01 14:17:15 +01:00
Sébastien Helleu 08fbfcc203 core: fix memory leak when config version is invalid or not supported 2023-10-30 23:30:01 +01:00
Sébastien Helleu fad3f0c942 core: check that buffer is not NULL in function gui_chat_printf_date_tags_internal 2023-10-30 23:29:25 +01:00
Sébastien Helleu 8c55f87fb2 core: fix use NULL pointer when a config file has no options 2023-10-30 23:29:17 +01:00
Sébastien Helleu 8fae2fd927 logger: remove dead assignment 2023-10-30 23:29:13 +01:00
Sébastien Helleu 53f1eb9b28 xfer: fix use of uninitialized variable when adding a new xfer 2023-10-30 23:29:05 +01:00
Sébastien Helleu 3e78d55495 xfer: fix use of NULL pointer in strrchr() 2023-10-30 23:28:51 +01:00
Sébastien Helleu aa5c03334a core: fix crash when "config_version" is present in a configuration file without a value 2023-10-30 23:28:07 +01:00
Sébastien Helleu 8e6647c7c9 core: display an error on startup if environment variable "HOME" is not set 2023-10-30 23:27:20 +01:00
Sébastien Helleu e140f3cf8e tests: check that environment variable "HOME" is set before using it 2023-10-30 23:26:01 +01:00
Sébastien Helleu 60b2b03f9a ruby: fix use of NULL variable when displaying exception 2023-10-30 23:25:51 +01:00
Sébastien Helleu 1769ce1814 Version 4.1.2-dev 2023-10-30 23:24:34 +01:00
Sébastien Helleu fbd579eb61 ci: uninstall php8.1-imagick before build (issue #2009)
When php imagick is installed and when WeeChat is compiled with gcc, there's a
crash when the php plugin is loaded.  Newer versions of gcc should fix the
issue, but as in CI we can't easily use them, uninstalling imagick avoids the
crash.
2023-10-28 09:21:00 +02:00
Sébastien Helleu 0e97de4293 Version 4.1.1 2023-10-26 21:13:53 +02:00
Sébastien Helleu 097dc1f48f Version 4.1.1-dev 2023-10-26 21:12:39 +02:00
Sébastien Helleu c3dba4496b core: add version 4.0.6 in ChangeLog and release notes 2023-10-26 21:11:07 +02:00
Sébastien Helleu 7d854c84de core: fix crash when a custom bar item name is already used by a default bar item (issue #2034) 2023-10-23 13:11:02 +02:00
Sébastien Helleu a9c410ff23 core: fix random timeouts when a lot of concurrent processes are launched with hook_process (issue #2033) 2023-10-22 21:05:45 +02:00
Sébastien Helleu 8c4ff51beb core: update translations (issue #194, issue #2032) 2023-10-19 23:57:25 +02:00
Sébastien Helleu 6ca604938f irc: revert compute of nick colors to case sensitive way, deprecate again IRC nick color infos (issue #194, issue #2032) 2023-10-19 23:31:49 +02:00
Sébastien Helleu 252f787fcf core: make libintl.h required if CMake option ENABLE_NLS is enabled (issue #2031) 2023-10-15 14:58:26 +02:00
Sébastien Helleu 839148e9d4 core: update French translations 2023-10-15 15:47:04 +02:00
65 changed files with 766 additions and 477 deletions
+2
View File
@@ -34,6 +34,8 @@ jobs:
run: |
sudo apt-get update -qq
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }}
# uninstall php imagick as is causes a crash when loading php plugin (see #2009)
sudo apt-get --yes purge php8.1-imagick
sudo -H pip3 install --ignore-installed msgcheck
- name: Check gettext files
+2 -4
View File
@@ -250,10 +250,8 @@ add_subdirectory(icons)
if(ENABLE_NLS)
find_package(Gettext REQUIRED)
add_definitions(-DENABLE_NLS)
find_package(Intl)
if(Intl_FOUND)
list(APPEND EXTRA_LIBS "${Intl_LIBRARIES}")
endif()
find_package(Intl REQUIRED)
list(APPEND EXTRA_LIBS "${Intl_LIBRARIES}")
add_subdirectory(po)
else()
add_custom_target(translations COMMAND true)
+57
View File
@@ -10,6 +10,34 @@ This document lists all the changes for each version. +
For a list of important changes that require manual actions, please look at release notes.
[[v4.1.2]]
== Version 4.1.2 (2023-12-03)
Bug fixes::
* core: fix value of buffer variable "num_history" when the value defined in option weechat.history.max_commands is reached
* core: remove incorrect warning when binding keys kbd:[F10] to kbd:[F20] (issue #2039)
* core: fix memory leak when config version is invalid or not supported
* core: fix crash when "config_version" is present in a configuration file without a value
* core: display an error on startup if environment variable "HOME" is not set
* irc: remove trailing "\r\n" in signals "irc_out" and "irc_outtags" when messages are queued
* irc: fix target buffer of IRC message 337 (whois reply: "is hiding their idle time")
* relay: close properly connection with the IRC client in case of server disconnection (issue #2038)
* ruby: fix use of NULL variable when displaying exception
[[v4.1.1]]
== Version 4.1.1 (2023-10-26)
Bug fixes::
* core: fix crash when a custom bar item name is already used by a default bar item (issue #2034)
* core: fix random timeouts when a lot of concurrent processes are launched with hook_process (issue #2033)
* irc: revert compute of nick colors to case sensitive way, deprecate again infos "irc_nick_color" and "irc_nick_color_name" (issue #194, issue #2032)
Build::
* core: make libintl.h required if CMake option ENABLE_NLS is enabled (issue #2031)
[[v4.1.0]]
== Version 4.1.0 (2023-10-15)
@@ -81,6 +109,35 @@ Build::
* core: fix build error if CMake option ENABLE_NLS is turned to off or if required dependencies are not found (issue #2026)
* core, logger, relay: make zstd dependency optional (issue #2024)
[[v4.0.7]]
== Version 4.0.7 (2023-12-03)
Bug fixes::
* core: fix value of buffer variable "num_history" when the value defined in option weechat.history.max_commands is reached
* core: remove incorrect warning when binding keys kbd:[F10] to kbd:[F20] (issue #2039)
* core: fix memory leak when config version is invalid or not supported
* core: fix crash when "config_version" is present in a configuration file without a value
* core: display an error on startup if environment variable "HOME" is not set
* irc: remove trailing "\r\n" in signals "irc_out" and "irc_outtags" when messages are queued
* irc: fix target buffer of IRC message 337 (whois reply: "is hiding their idle time")
* relay: close properly connection with the IRC client in case of server disconnection (issue #2038)
* ruby: fix use of NULL variable when displaying exception
[[v4.0.6]]
== Version 4.0.6 (2023-10-26)
Bug fixes::
* core: fix crash when a custom bar item name is already used by a default bar item (issue #2034)
* core: fix generation of TOTP on Big Endian systems (issue #2021)
* irc: move value `-all` at the end of completions for command `/ignore del`
* irc: fix memory leak when joining channels with keys
Build::
* core: fix build error if CMake option ENABLE_NLS is turned to off or if required dependencies are not found (issue #2026, issue #2031)
[[v4.0.5]]
== Version 4.0.5 (2023-09-24)
+43
View File
@@ -11,6 +11,31 @@ It is recommended to read it when upgrading to a new stable version. +
For a complete list of changes, please look at ChangeLog.
[[v4.1.2]]
== Version 4.1.2 (2023-12-03)
No release notes.
[[v4.1.1]]
== Version 4.1.1 (2023-10-26)
[[v4.1.1_custom_bar_items]]
=== Custom bar items
Custom bar items must now have a different name than default bar items
(for example the custom bar item name `time` is now forbidden).
If you have such names in your config, WeeChat will now fail to load them
(this should not happen anyway, since such bar items can not be properly used
or can cause a crash of WeeChat).
[[v4.1.1_nick_color_infos]]
=== Nick color infos
The infos irc_nick_color and irc_nick_color_name are deprecated again, and the
algorithm to compute IRC nick colors has been reverted to case sensitive. +
The server name has been removed from arguments.
[[v4.1.0]]
== Version 4.1.0 (2023-10-15)
@@ -120,6 +145,24 @@ You can reset it with this command:
/reset weechat.key_mouse.@chat(fset.fset):button1
----
[[v4.0.7]]
== Version 4.0.7 (2023-12-03)
No release notes.
[[v4.0.6]]
== Version 4.0.6 (2023-10-26)
[[v4.0.6_custom_bar_items]]
=== Custom bar items
Custom bar items must now have a different name than default bar items
(for example the custom bar item name `time` is now forbidden).
If you have such names in your config, WeeChat will now fail to load them
(this should not happen anyway, since such bar items can not be properly used
and can cause a crash of WeeChat).
[[v4.0.5]]
== Version 4.0.5 (2023-09-24)
+22 -20
View File
@@ -45,26 +45,28 @@ set(CMAKE_REQUIRED_INCLUDES ${LIBINTL_INCLUDE})
check_include_files(libintl.h HAVE_LIBINTL_H)
if(HAVE_LIBINTL_H)
check_function_exists(dgettext LIBC_HAS_DGETTEXT)
if(LIBC_HAS_DGETTEXT)
set(GETTEXT_FOUND TRUE)
else()
find_library(LIBINTL_LIBRARY NAMES intl
PATHS
/usr/local/lib
/usr/lib
)
if(LIBINTL_LIBRARY)
if(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
set(CMAKE_REQUIRED_LIBRARIES "iconv")
check_library_exists(${LIBINTL_LIBRARY} "libintl_dgettext" "" LIBINTL_HAS_DGETTEXT)
else()
check_library_exists(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT)
endif()
if(LIBINTL_HAS_DGETTEXT)
set(GETTEXT_FOUND TRUE)
endif()
if(NOT HAVE_LIBINTL_H)
message(SEND_ERROR "Header libintl.h not found, required if ENABLE_NLS is enabled")
endif()
check_function_exists(dgettext LIBC_HAS_DGETTEXT)
if(LIBC_HAS_DGETTEXT)
set(GETTEXT_FOUND TRUE)
else()
find_library(LIBINTL_LIBRARY NAMES intl
PATHS
/usr/local/lib
/usr/lib
)
if(LIBINTL_LIBRARY)
if(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
set(CMAKE_REQUIRED_LIBRARIES "iconv")
check_library_exists(${LIBINTL_LIBRARY} "libintl_dgettext" "" LIBINTL_HAS_DGETTEXT)
else()
check_library_exists(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT)
endif()
if(LIBINTL_HAS_DGETTEXT)
set(GETTEXT_FOUND TRUE)
endif()
endif()
endif()
-1
View File
@@ -1,4 +1,3 @@
#cmakedefine HAVE_LIBINTL_H
#cmakedefine HAVE_SYS_RESOURCE_H
#cmakedefine HAVE_FLOCK
#cmakedefine HAVE_LANGINFO_CODESET
+20 -12
View File
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-09-06 19:13+0200\n"
"Last-Translator: Ondřej Súkup <mimi.vx@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -52,8 +52,9 @@ msgstr "%sChyba: neznámý příkaz \"%s\" (napište /help pro nápovědu)"
msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr ""
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr "Konec příkazu '%s', vypršel časový limit (%.1fs)"
#, c-format
@@ -68,7 +69,7 @@ msgstr "chyba curlu %d (%s) (URL: \"%s\")\n"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr "Konec příkazu '%s', vypršel časový limit (%.1fs)"
#, c-format
@@ -4707,6 +4708,11 @@ msgid ""
"Error: unable to create a temporary home directory (using template: \"%s\")\n"
msgstr "%s%s: nemohu vytvořit adresář pro logy (\"%s\")"
#, fuzzy
#| msgid "Environment variable \"%s\" is not defined"
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr "Proměnná prostředí \"%s\" není definována"
#, fuzzy, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "Chyba: domovský adresář (%s) není adresářem\n"
@@ -10028,17 +10034,19 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr "IRC host (jako `:nick!name@server.com`)"
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
#, fuzzy
#| msgid "nick"
#| msgid_plural "nicks"
msgid "nickname"
msgstr "přezdívka"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
msgid "get buffer pointer for an IRC server/channel/nick"
+50 -36
View File
@@ -26,7 +26,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-10-11 07:51+0200\n"
"Last-Translator: Nils Görs <weechatter@arcor.de>\n"
"Language-Team: German <kde-i18n-de@kde.org>\n"
@@ -64,8 +64,9 @@ msgstr ""
msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr "%sBad file descriptor (%d) wurde in Funktion \"hook_fd\" genutzt"
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr "Befehl '%s' beendet, Zeit ist verstrichen (%.1fs)"
#, c-format
@@ -77,8 +78,9 @@ msgstr ""
msgid "%sURL transfer error: %s (URL: \"%s\")"
msgstr "%sURL Transferfehler: %s (URL: \"%s\")"
#, c-format
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
#, fuzzy, c-format
#| msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr "Ende der URL-Übertragung „%s“, Zeitüberschreitung erreicht (%.1fs)"
#, c-format
@@ -3520,13 +3522,6 @@ msgstr ""
msgid "system actions"
msgstr "Systemaktionen"
#| msgid ""
#| " get: display system info\n"
#| " rlimit: display resource limits (see /help weechat.startup.sys_rlimit "
#| "and \"man getrlimit\")\n"
#| " rusage: display resource usage (see \"man getrusage\")\n"
#| "suspend: suspend WeeChat and go back to the shell, by sending signal "
#| "SIGTSTP to the WeeChat process"
msgid ""
" get: display system info\n"
" rlimit: display resource limits (see /help weechat.startup.sys_rlimit and "
@@ -3543,8 +3538,8 @@ msgstr ""
" rusage: Ressourcennutzung anzeigen (siehe \"man getrusage\")\n"
"suspend: Beendet WeeChat und kehrt zur Shell zurück, indem das Signal "
"SIGTSTP an den WeeChat-Prozess gesendet wird\n"
"waitpid: Bestätigt das Ende untergeordneter Prozesse (um „Zombie“ Prozesse zu"
" verhindern)"
"waitpid: Bestätigt das Ende untergeordneter Prozesse (um „Zombie“ Prozesse "
"zu verhindern)"
msgid "toggle value of a config option"
msgstr "den Wert einer Konfigurationsoption umschalten"
@@ -5923,6 +5918,11 @@ msgstr ""
"Fehler: es kann kein temporäres Heimatverzeichnis angelegt werden (mit "
"Befehl: \"%s\")\n"
#, fuzzy
#| msgid "Environment variable \"%s\" is not defined"
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr "Umgebungsvariable \"%s\" ist nicht definiert"
#, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "Fehler: \"%s\" ist kein Verzeichnis\n"
@@ -12447,28 +12447,20 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr "IRC host (in der Form `:nick!name@server.com`)"
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
"Hole den Farbcode des Nicks, Groß- und Kleinschreibung wird ignoriert (dies "
"ruft die Funktion„nick_color_name_ignore_case“ mit entsprechendem Bereich "
"auf, dabei wird der Wert des CASEMAPPING auf dem Serverberücksichtigt, "
"standardmäßig wird auf „rfc1459“ zurückgegriffen, wenn derServer nicht "
"angegeben wurde)"
#, fuzzy
#| msgid "nick"
#| msgid_plural "nicks"
msgid "nickname"
msgstr "Nick"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
"Hole den Farbnamen des Nicks, Groß- und Kleinschreibung wird ignoriert (dies "
"ruft die Funktion„nick_color_name_ignore_case“ mit entsprechendem Bereich "
"auf, dabei wird der Wert des CASEMAPPING auf dem Serverberücksichtigt, "
"standardmäßig wird auf „rfc1459“ zurückgegriffen, wenn derServer nicht "
"angegeben wurde)"
msgid "get buffer pointer for an IRC server/channel/nick"
msgstr "holt Buffer Pointer für einen IRC Server/Kanal/Nick"
@@ -16691,8 +16683,7 @@ msgstr "verwaltet Trigger, das Schweizer Armeemesser für WeeChat"
msgid ""
"list [-o|-ol|-i|-il] || listfull || listdefault || add|addoff|addreplace "
"<name> <hook> "
"[\"<arguments>\" [\"<conditions>\" [\"<regex>\" [\"<command>\" [\"<"
"return_code>\" [\"<post_action>\"]]]]]] "
"[\"<arguments>\" [\"<conditions>\" [\"<regex>\" [\"<command>\" [\"<return_code>\" [\"<post_action>\"]]]]]] "
"|| addinput [<hook>] || input|output|recreate <name> || set <name> <option> "
"<value> || rename|copy <name> <new_name> || enable|disable|toggle [<name>|-"
"all [<name>...]] || restart <name>|-all [<name>...] || show <name> || del "
@@ -16701,8 +16692,7 @@ msgid ""
msgstr ""
"list [-o|-ol|-i|-il] || listfull || listdefault || add|addoff|addreplace "
"<name> <hook> "
"[\"<arguments>\" [\"<conditions>\" [\"<regex>\" [\"<command>\" [\"<"
"return_code>\" [\"<post_action>\"]]]]]] "
"[\"<arguments>\" [\"<conditions>\" [\"<regex>\" [\"<command>\" [\"<return_code>\" [\"<post_action>\"]]]]]] "
"|| addinput [<hook>] || input|output|recreate <name> || set <name> <option> "
"<value> || rename|copy <name> <new_name> || enable|disable|toggle [<name>|-"
"all [<name>...]] || restart <name>|-all [<name>...] || show <name> || del "
@@ -17631,5 +17621,29 @@ msgid "%s%s: unable to connect: unexpected error (%d)"
msgstr ""
"%s%s: Verbindung konnte nicht hergestellt werden: unerwarteter Fehler (%d)"
#~ msgid ""
#~ "get nick color code, ignoring case (this calls the info "
#~ "\"nick_color_ignore_case\" with appropriate range, according to the value "
#~ "of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is "
#~ "not given)"
#~ msgstr ""
#~ "Hole den Farbcode des Nicks, Groß- und Kleinschreibung wird ignoriert "
#~ "(dies ruft die Funktion„nick_color_name_ignore_case“ mit entsprechendem "
#~ "Bereich auf, dabei wird der Wert des CASEMAPPING auf dem "
#~ "Serverberücksichtigt, standardmäßig wird auf „rfc1459“ zurückgegriffen, "
#~ "wenn derServer nicht angegeben wurde)"
#~ msgid ""
#~ "get nick color name, ignoring case (this calls the info "
#~ "\"nick_color_name_ignore_case\" with appropriate range, according to the "
#~ "value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the "
#~ "server is not given)"
#~ msgstr ""
#~ "Hole den Farbnamen des Nicks, Groß- und Kleinschreibung wird ignoriert "
#~ "(dies ruft die Funktion„nick_color_name_ignore_case“ mit entsprechendem "
#~ "Bereich auf, dabei wird der Wert des CASEMAPPING auf dem "
#~ "Serverberücksichtigt, standardmäßig wird auf „rfc1459“ zurückgegriffen, "
#~ "wenn derServer nicht angegeben wurde)"
#~ msgid "hash algorithm used to check the decrypted data"
#~ msgstr "Hash-Algorithmus zur Überprüfung der verschlüsselten Daten"
+20 -12
View File
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-09-06 19:13+0200\n"
"Last-Translator: Santiago Forero <santiago@forero.xyz>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -52,8 +52,9 @@ msgstr "%sError: comando \"%s\" desconocido (use /help para ver la ayuda)"
msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr "%sError: mal descriptor de archivo (%d) usado en hook_fd"
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr "Fin del comando '%s', tiempo de espera alcanzado (%.1fs)"
#, c-format
@@ -68,7 +69,7 @@ msgstr ""
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr "Fin del comando '%s', tiempo de espera alcanzado (%.1fs)"
#, c-format
@@ -5340,6 +5341,11 @@ msgid ""
"Error: unable to create a temporary home directory (using template: \"%s\")\n"
msgstr "%s%s: imposible crear directorio para registros (\"%s\")"
#, fuzzy
#| msgid "Environment variable \"%s\" is not defined"
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr "Variable \"%s\" no definida"
#, fuzzy, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "Error: home (%s) no es un directorio\n"
@@ -10756,17 +10762,19 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr "IRC host (como `:apodo!nombre@servidor.com`)"
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
#, fuzzy
#| msgid "nick"
#| msgid_plural "nicks"
msgid "nickname"
msgstr "apodo"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
msgid "get buffer pointer for an IRC server/channel/nick"
+42 -22
View File
@@ -21,8 +21,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"PO-Revision-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-10-30 23:27+0100\n"
"Last-Translator: Sébastien Helleu <flashcode@flashtux.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: fr\n"
@@ -56,8 +56,8 @@ msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr "%sMauvais descripteur de fichier (%d) utilisé dans hook_fd"
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
msgstr "Fin de la commande '%s', temps maximum atteint (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr "Fin de la commande '%s', temps maximum atteint (%.3fs)"
#, c-format
msgid "System clock skew detected (%+ld seconds), reinitializing all timers"
@@ -70,8 +70,8 @@ msgid "%sURL transfer error: %s (URL: \"%s\")"
msgstr "%sErreur de transfert d'URL : %s (URL : \"%s\")"
#, c-format
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgstr "Fin du transfert d'URL '%s', temps maximum atteint (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr "Fin du transfert d'URL '%s', temps maximum atteint (%.3fs)"
#, c-format
msgid "%sError running thread in hook_url: %s (URL: \"%s\")"
@@ -5788,6 +5788,9 @@ msgstr ""
"Erreur : impossible de créer le répertoire de base temporaire (en utilisant "
"le modèle : \"%s\")\n"
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr "Erreur : la variable d'environnement \"HOME\" n'est pas définie\n"
#, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "Erreur : \"%s\" n'est pas un répertoire\n"
@@ -12209,26 +12212,21 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr "host IRC (comme `:pseudo!nom@serveur.com`)"
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
"retourne le code couleur du pseudo, en ignorant la casse (cela appelle "
"l'info \"nick_color_ignore_case\" avec l'intervalle approprié, selon la "
"valeur de CASEMAPPING sur le serveur, par défaut \"rfc1459\" si le serveur "
"n'est pas fourni)"
"retourne le code couleur du pseudo (*obsolète* depuis la version 1.5, "
"remplacé par \"nick_color\")"
msgid "nickname"
msgstr "pseudo"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
"retourne le nom de la couleur du pseudo, en ignorant la casse (cela appelle "
"l'info \"nick_color_name_ignore_case\" avec l'intervalle approprié, selon la "
"valeur de CASEMAPPING sur le serveur, par défaut \"rfc1459\" si le serveur "
"n'est pas fourni)"
"retourne le nom de la couleur du pseudo (*obsolète* depuis la version 1.5, "
"remplacé par \"nick_color_name\")"
msgid "get buffer pointer for an IRC server/channel/nick"
msgstr "retourne le pointeur vers le tampon pour un serveur/canal/pseudo IRC"
@@ -17318,3 +17316,25 @@ msgstr "%s%s : délai d'attente dépassé pour \"%s\" avec %s"
#, c-format
msgid "%s%s: unable to connect: unexpected error (%d)"
msgstr "%s%s : impossible de se connecter : erreur inattendue (%d)"
#~ msgid ""
#~ "get nick color code, ignoring case (this calls the info "
#~ "\"nick_color_ignore_case\" with appropriate range, according to the value "
#~ "of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is "
#~ "not given)"
#~ msgstr ""
#~ "retourne le code couleur du pseudo, en ignorant la casse (cela appelle "
#~ "l'info \"nick_color_ignore_case\" avec l'intervalle approprié, selon la "
#~ "valeur de CASEMAPPING sur le serveur, par défaut \"rfc1459\" si le "
#~ "serveur n'est pas fourni)"
#~ msgid ""
#~ "get nick color name, ignoring case (this calls the info "
#~ "\"nick_color_name_ignore_case\" with appropriate range, according to the "
#~ "value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the "
#~ "server is not given)"
#~ msgstr ""
#~ "retourne le nom de la couleur du pseudo, en ignorant la casse (cela "
#~ "appelle l'info \"nick_color_name_ignore_case\" avec l'intervalle "
#~ "approprié, selon la valeur de CASEMAPPING sur le serveur, par défaut "
#~ "\"rfc1459\" si le serveur n'est pas fourni)"
+15 -11
View File
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-09-06 19:13+0200\n"
"Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -51,7 +51,7 @@ msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr ""
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr ""
#, c-format
@@ -63,7 +63,7 @@ msgid "%sURL transfer error: %s (URL: \"%s\")"
msgstr ""
#, c-format
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr ""
#, c-format
@@ -4236,6 +4236,10 @@ msgid ""
"Error: unable to create a temporary home directory (using template: \"%s\")\n"
msgstr "%s nem sikerült a szervert létrehozni\n"
#, fuzzy
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr " . típus: szám\n"
#, fuzzy, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "%s nem sikerült a \"%s\" könyvtárat létrehozni\n"
@@ -9441,17 +9445,17 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr ""
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
#, fuzzy
msgid "nickname"
msgstr "név"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
#, fuzzy
+19 -12
View File
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-09-06 19:13+0200\n"
"Last-Translator: Esteban I. Ruiz Moreno <exio4.com@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -50,8 +50,9 @@ msgstr "%sErrore: comando \"%s\" sconosciuto (digita /help per l'aiuto)"
msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr "%sErrore: descrittore file errato (%d) usato in hook_fd"
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr "Fine comando '%s', timeout raggiunto (%.1fs)"
#, c-format
@@ -66,7 +67,7 @@ msgstr ""
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr "Fine comando '%s', timeout raggiunto (%.1fs)"
#, c-format
@@ -4976,6 +4977,10 @@ msgid ""
"Error: unable to create a temporary home directory (using template: \"%s\")\n"
msgstr "%s%s: impossibile creare la directory per i log (\"%s\")"
#, fuzzy
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr "Variabili"
#, fuzzy, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "Errore: home (%s) non è una directory\n"
@@ -10485,17 +10490,19 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr "host IRC (come `:nick!nome@server.com`)"
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
#, fuzzy
#| msgid "nick"
#| msgid_plural "nicks"
msgid "nickname"
msgstr "nick"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
msgid "get buffer pointer for an IRC server/channel/nick"
+20 -12
View File
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-09-06 19:13+0200\n"
"Last-Translator: AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>\n"
"Language-Team: Japanese <https://github.com/l/weechat/tree/master/"
@@ -53,8 +53,9 @@ msgstr "%sエラー: 未定義のコマンド \"%s\" (ヘルプを見るには /
msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr "%sエラー: hook_fd で不正なファイルディスクリプタ (%d) が使われました"
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr "コマンド '%s' の終了、タイムアウトになりました (%.1fs)"
#, c-format
@@ -70,7 +71,7 @@ msgstr "curl エラー %d (%s) (URL: \"%s\")\n"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr "コマンド '%s' の終了、タイムアウトになりました (%.1fs)"
#, c-format
@@ -5625,6 +5626,11 @@ msgid ""
msgstr ""
"エラー: 一時的なホームディレクリ (テンプレート: \"%s\") を作成できません\n"
#, fuzzy
#| msgid "Environment variable \"%s\" is not defined"
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr "環境変数 \"%s\" が定義されていません"
#, fuzzy, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "エラー: ホーム (%s) はディレクトリではありません\n"
@@ -11740,17 +11746,19 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr "IRC ホスト (例: `:nick!name@server.com`)"
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
#, fuzzy
#| msgid "nick"
#| msgid_plural "nicks"
msgid "nickname"
msgstr "ニックネーム"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
msgid "get buffer pointer for an IRC server/channel/nick"
+20 -12
View File
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-09-06 19:13+0200\n"
"Last-Translator: Krzysztof Korościk <soltys@soltys.info>\n"
"Language-Team: Polish <kde-i18n-doc@kde.org>\n"
@@ -56,8 +56,9 @@ msgstr "%sNieznana komenda \"%s\" (wpisz /help , aby uzyskać pomoc)"
msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr "%sZły deskryptor pliku (%d) użyty w hook_fd"
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr "Kończenie komendy '%s', przekroczono dopuszczalny czas (%.1fs)"
#, c-format
@@ -73,7 +74,7 @@ msgstr "błąd curl %d (%s) (URL: \"%s\")\n"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr "Kończenie komendy '%s', przekroczono dopuszczalny czas (%.1fs)"
#, c-format
@@ -6197,6 +6198,11 @@ msgstr ""
"Błąd: nie można utworzyć tymczasowego katalogu domowego (używając szablonu: "
"\"%s\")\n"
#, fuzzy
#| msgid "Environment variable \"%s\" is not defined"
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr "Zmienna środowiskowa \"%s\" nie jest zdefiniowana"
#, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "Błąd: „%s” nie jest katalogiem\n"
@@ -12954,17 +12960,19 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr "Host IRC (jak `:nick!nazwa@serwer.com`)"
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
#, fuzzy
#| msgid "nick"
#| msgid_plural "nicks"
msgid "nickname"
msgstr "nick"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
msgid "get buffer pointer for an IRC server/channel/nick"
+20 -12
View File
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-09-06 19:13+0200\n"
"Last-Translator: Vasco Almeida <vascomalmeida@sapo.pt>\n"
"Language-Team: Portuguese <>\n"
@@ -51,8 +51,9 @@ msgstr "%sErro: comando desconhecido: \"%s\" (escreva /help para obter ajuda)"
msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr "%sErro: descritor de ficheiro incorreto (%d) usado em hook_fd"
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr "Fim do comando '%s', tempo limite atingido (%.1fs)"
#, c-format
@@ -68,7 +69,7 @@ msgstr "erro curl %d (%s) (URL: \"%s\")\n"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr "Fim do comando '%s', tempo limite atingido (%.1fs)"
#, c-format
@@ -5614,6 +5615,11 @@ msgid ""
"Error: unable to create a temporary home directory (using template: \"%s\")\n"
msgstr "%s%s: não foi possível criar diretório para registos (\"%s\")"
#, fuzzy
#| msgid "Environment variable \"%s\" is not defined"
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr "A variável de ambiente \"%s\" não está definida"
#, fuzzy, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "Erro: a base (%s) não é um diretório\n"
@@ -11441,17 +11447,19 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr "host de IRC (tal como `:nick!nome@servidor.com`)"
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
#, fuzzy
#| msgid "nick"
#| msgid_plural "nicks"
msgid "nickname"
msgstr "nick"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
msgid "get buffer pointer for an IRC server/channel/nick"
+17 -11
View File
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-09-06 19:13+0200\n"
"Last-Translator: Érico Nogueira <ericonr@disroot.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -53,7 +53,7 @@ msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr "%sDescritor de arquivo ruim (%d) usado em hook_fd"
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr ""
#, c-format
@@ -67,7 +67,7 @@ msgid "%sURL transfer error: %s (URL: \"%s\")"
msgstr ""
#, c-format
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr ""
#, c-format
@@ -4981,6 +4981,10 @@ msgid ""
"Error: unable to create a temporary home directory (using template: \"%s\")\n"
msgstr "%s%s: não foi possível criar diretório para registros (\"%s\")"
#, fuzzy
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr "Variáveis"
#, fuzzy, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "Erro: (%s) não é um diretório\n"
@@ -10027,17 +10031,19 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr "host IRC (exemplo: `:apelido!nome@servidor.com`)"
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
#, fuzzy
#| msgid "nick"
#| msgid_plural "nicks"
msgid "nickname"
msgstr "apelido"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
msgid "get buffer pointer for an IRC server/channel/nick"
+15 -11
View File
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-09-06 19:13+0200\n"
"Last-Translator: Aleksey V Zapparov AKA ixti <ixti@member.fsf.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -54,7 +54,7 @@ msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr ""
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr ""
#, c-format
@@ -66,7 +66,7 @@ msgid "%sURL transfer error: %s (URL: \"%s\")"
msgstr ""
#, c-format
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr ""
#, c-format
@@ -4266,6 +4266,10 @@ msgid ""
"Error: unable to create a temporary home directory (using template: \"%s\")\n"
msgstr "%s не могу создать сервер \"%s\"\n"
#, fuzzy
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr " . тип: целочисленный\n"
#, fuzzy, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "%s домашний каталог (%s) не является директорией\n"
@@ -9480,17 +9484,17 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr ""
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
#, fuzzy
msgid "nickname"
msgstr "ник"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
#, fuzzy
+42 -20
View File
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-09-06 19:13+0200\n"
"Last-Translator: Ivan Pešić <ivan.pesic@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -55,8 +55,9 @@ msgstr ""
msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr "%sУ hook_fd је употребљен лош дескриптор фајла (%d)"
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr "Крај команде ’%s’, достигнут је тајмаут (%.1fs)"
#, c-format
@@ -72,7 +73,7 @@ msgstr "curl грешка %d (%s) (URL: „%s”)\n"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr "Крај команде ’%s’, достигнут је тајмаут (%.1fs)"
#, c-format
@@ -5705,6 +5706,11 @@ msgstr ""
"Грешка: не може да се креира привремени почетни директоријум (користећи "
"шаблон: \"%s\")\n"
#, fuzzy
#| msgid "Environment variable \"%s\" is not defined"
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr "Није дефинисана променљива окружења „%s”"
#, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "Грешка: „%s” није директоријум\n"
@@ -12038,26 +12044,20 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr "IRC хост (као `:надимак!име@сервер.com`)"
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
"враћа код боје надимка, без разликовања величине слова (ово позива инфо "
"„nick_color_ignore_case” са одговарајућим опсегом, у сагласности са "
"вредношћу CASEMAPPING на серверу, узимајући подразумевану вредност „rfc1459” "
"ако се сервер не наведе)"
#, fuzzy
#| msgid "nick"
#| msgid_plural "nicks"
msgid "nickname"
msgstr "надимак"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
"враћа име боје надимка, без разликовања величине слова (ово позива инфо "
"„nick_color_name_ignore_case” са одговарајућим опсегом, у сагласности са "
"вредношћу CASEMAPPING на серверу, узимајући подразумевану вредност „rfc1459” "
"ако се сервер не наведе)"
msgid "get buffer pointer for an IRC server/channel/nick"
msgstr "враћа показивач на бафер за IRC сервер/канал/надимак"
@@ -17132,5 +17132,27 @@ msgstr "%s%s: тајмаут за „%s” са %s"
msgid "%s%s: unable to connect: unexpected error (%d)"
msgstr "%s%s: повезивање није успело: неочекивана грешка (%d)"
#~ msgid ""
#~ "get nick color code, ignoring case (this calls the info "
#~ "\"nick_color_ignore_case\" with appropriate range, according to the value "
#~ "of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is "
#~ "not given)"
#~ msgstr ""
#~ "враћа код боје надимка, без разликовања величине слова (ово позива инфо "
#~ "„nick_color_ignore_case” са одговарајућим опсегом, у сагласности са "
#~ "вредношћу CASEMAPPING на серверу, узимајући подразумевану вредност "
#~ "„rfc1459” ако се сервер не наведе)"
#~ msgid ""
#~ "get nick color name, ignoring case (this calls the info "
#~ "\"nick_color_name_ignore_case\" with appropriate range, according to the "
#~ "value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the "
#~ "server is not given)"
#~ msgstr ""
#~ "враћа име боје надимка, без разликовања величине слова (ово позива инфо "
#~ "„nick_color_name_ignore_case” са одговарајућим опсегом, у сагласности са "
#~ "вредношћу CASEMAPPING на серверу, узимајући подразумевану вредност "
#~ "„rfc1459” ако се сервер не наведе)"
#~ msgid "hash algorithm used to check the decrypted data"
#~ msgstr "хеш алгоритам који се користи за проверу дешифрованих података"
+20 -12
View File
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2023-09-06 19:13+0200\n"
"Last-Translator: Emir SARI <emir_sari@icloud.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -51,8 +51,9 @@ msgstr "%s Bilinmeyen komut \"%s\" (yardım için /help yazın)"
msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr "%sHatalı dosya açıklayıcısı (%d) hook_fd içinde kullanılmış"
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr "'%s' komutu sonu, zaman aşımına ulaşıldı (%.1fs)"
#, c-format
@@ -67,7 +68,7 @@ msgstr "curl hatası %d (%s) (URL: \"%s\")\n"
#, fuzzy, c-format
#| msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr "'%s' komutu sonu, zaman aşımına ulaşıldı (%.1fs)"
#, c-format
@@ -5757,6 +5758,11 @@ msgid ""
msgstr ""
"Hata: Geçici bir ev dizini oluşturulamıyor (kullanılan şablon: \"%s\")\n"
#, fuzzy
#| msgid "Environment variable \"%s\" is not defined"
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr "Ortam değişkeni \"%s\" tanımlanmamış"
#, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr "Hata: \"%s\" bir dizin değil\n"
@@ -12440,17 +12446,19 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr "IRC makinesi (örneğin: `:nick!name@server.com`)"
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
#, fuzzy
#| msgid "nick"
#| msgid_plural "nicks"
msgid "nickname"
msgstr "takma ad"
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
msgid "get buffer pointer for an IRC server/channel/nick"
+13 -11
View File
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2023-10-10 19:22+0200\n"
"POT-Creation-Date: 2023-10-30 23:26+0100\n"
"PO-Revision-Date: 2014-08-16 10:27+0200\n"
"Last-Translator: Sébastien Helleu <flashcode@flashtux.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -51,7 +51,7 @@ msgid "%sBad file descriptor (%d) used in hook_fd"
msgstr ""
#, c-format
msgid "End of command '%s', timeout reached (%.1fs)"
msgid "End of command '%s', timeout reached (%.3fs)"
msgstr ""
#, c-format
@@ -63,7 +63,7 @@ msgid "%sURL transfer error: %s (URL: \"%s\")"
msgstr ""
#, c-format
msgid "End of URL transfer '%s', timeout reached (%.1fs)"
msgid "End of URL transfer '%s', timeout reached (%.3fs)"
msgstr ""
#, c-format
@@ -3882,6 +3882,9 @@ msgid ""
"Error: unable to create a temporary home directory (using template: \"%s\")\n"
msgstr ""
msgid "Error: environment variable \"HOME\" is not defined\n"
msgstr ""
#, c-format
msgid "Error: \"%s\" is not a directory\n"
msgstr ""
@@ -8497,17 +8500,16 @@ msgid "IRC host (like `:nick!name@server.com`)"
msgstr ""
msgid ""
"get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according to the value of "
"CASEMAPPING on the server, defaulting to \"rfc1459\" if the server is not "
"given)"
"get nick color code (*deprecated* since version 1.5, replaced by "
"\"nick_color\")"
msgstr ""
msgid "nickname"
msgstr ""
msgid ""
"get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according to the "
"value of CASEMAPPING on the server, defaulting to \"rfc1459\" if the server "
"is not given)"
"get nick color name (*deprecated* since version 1.5, replaced by "
"\"nick_color_name\")"
msgstr ""
msgid "get buffer pointer for an IRC server/channel/nick"
+1 -1
View File
@@ -270,7 +270,7 @@ hook_connect_free_data (struct t_hook *hook)
if (HOOK_CONNECT(hook, child_pid) > 0)
{
kill (HOOK_CONNECT(hook, child_pid), SIGKILL);
hook_schedule_clean_children ();
hook_schedule_clean_process (HOOK_CONNECT(hook, child_pid));
HOOK_CONNECT(hook, child_pid) = 0;
}
if (HOOK_CONNECT(hook, child_read) != -1)
+2 -1
View File
@@ -146,6 +146,7 @@ hook_process_hashtable (struct t_weechat_plugin *plugin,
ptr_value = hashtable_get (options, "buffer_flush");
if (ptr_value && ptr_value[0])
{
error = NULL;
number = strtol (ptr_value, &error, 10);
if (error && !error[0]
&& (number >= 1) && (number <= HOOK_PROCESS_BUFFER_SIZE))
@@ -862,7 +863,7 @@ hook_process_free_data (struct t_hook *hook)
if (HOOK_PROCESS(hook, child_pid) > 0)
{
kill (HOOK_PROCESS(hook, child_pid), SIGKILL);
hook_schedule_clean_children ();
hook_schedule_clean_process (HOOK_PROCESS(hook, child_pid));
HOOK_PROCESS(hook, child_pid) = 0;
}
if (HOOK_PROCESS(hook, child_read[HOOK_PROCESS_STDIN]) != -1)
+3
View File
@@ -739,6 +739,7 @@ COMMAND_CALLBACK(buffer)
else
{
ptr_buffer = gui_buffer_search_by_number_or_name (argv[i]);
error = NULL;
(void) strtol (argv[i], &error, 10);
clear_number = (error && !error[0]);
}
@@ -974,6 +975,7 @@ COMMAND_CALLBACK(buffer)
ptr_buffer = gui_buffer_search_by_number_or_name (argv[i]);
if (ptr_buffer)
{
error = NULL;
(void) strtol (argv[i], &error, 10);
if (error && !error[0])
{
@@ -1012,6 +1014,7 @@ COMMAND_CALLBACK(buffer)
ptr_buffer = gui_buffer_search_by_number_or_name (argv[i]);
if (ptr_buffer)
{
error = NULL;
(void) strtol (argv[i], &error, 10);
if (error && !error[0])
{
+12
View File
@@ -3255,6 +3255,10 @@ config_file_parse_version (const char *version)
long number;
char *error;
if (!version)
return -1;
error = NULL;
number = strtoll (version, &error, 10);
if (!error || error[0])
return -1;
@@ -3667,6 +3671,10 @@ config_file_read_internal (struct t_config_file *config_file, int reload)
filename, line_number,
line);
config_file_backup (filename);
if (option)
free (option);
if (value)
free (value);
goto end_file;
}
else
@@ -3684,6 +3692,10 @@ config_file_read_internal (struct t_config_file *config_file, int reload)
config_file->version_read,
config_file->version);
config_file_backup (filename);
if (option)
free (option);
if (value)
free (value);
goto end_file;
}
}
+20 -10
View File
@@ -2197,17 +2197,20 @@ config_weechat_custom_bar_item_read_cb (const void *pointer, void *data,
if (!ptr_temp_item)
{
/* create new temporary custom bar item */
ptr_temp_item = gui_bar_item_custom_alloc (item_name);
if (ptr_temp_item)
if (gui_bar_item_search_default (item_name) < 0)
{
/* add new custom bar item at the end */
ptr_temp_item->prev_item = last_gui_temp_custom_bar_item;
ptr_temp_item->next_item = NULL;
if (last_gui_temp_custom_bar_item)
last_gui_temp_custom_bar_item->next_item = ptr_temp_item;
else
gui_temp_custom_bar_items = ptr_temp_item;
last_gui_temp_custom_bar_item = ptr_temp_item;
ptr_temp_item = gui_bar_item_custom_alloc (item_name);
if (ptr_temp_item)
{
/* add new custom bar item at the end */
ptr_temp_item->prev_item = last_gui_temp_custom_bar_item;
ptr_temp_item->next_item = NULL;
if (last_gui_temp_custom_bar_item)
last_gui_temp_custom_bar_item->next_item = ptr_temp_item;
else
gui_temp_custom_bar_items = ptr_temp_item;
last_gui_temp_custom_bar_item = ptr_temp_item;
}
}
}
@@ -2228,6 +2231,13 @@ config_weechat_custom_bar_item_read_cb (const void *pointer, void *data,
section->name, option_name, value);
}
}
else
{
gui_chat_printf (NULL,
_("%sUnable to add custom bar item \"%s\""),
gui_chat_prefix[GUI_CHAT_PREFIX_ERROR],
item_name);
}
free (item_name);
+16 -5
View File
@@ -442,6 +442,9 @@ dir_find_xdg_dirs (char **config_dir, char **data_dir, char **cache_dir,
*runtime_dir = NULL;
ptr_home = getenv ("HOME");
if (!ptr_home)
goto error_home;
xdg_config_home = getenv ("XDG_CONFIG_HOME");
xdg_data_home = getenv ("XDG_DATA_HOME");
xdg_cache_home = getenv ("XDG_CACHE_HOME");
@@ -462,7 +465,7 @@ dir_find_xdg_dirs (char **config_dir, char **data_dir, char **cache_dir,
}
*config_dir = strdup (path);
if (!*config_dir)
goto error;
goto error_memory;
/* set data dir: $XDG_DATA_HOME/weechat or $HOME/.local/share/weechat */
if (xdg_data_home && xdg_data_home[0])
@@ -480,7 +483,7 @@ dir_find_xdg_dirs (char **config_dir, char **data_dir, char **cache_dir,
}
*data_dir = strdup (path);
if (!*data_dir)
goto error;
goto error_memory;
/* set cache dir: $XDG_CACHE_HOME/weechat or $HOME/.cache/weechat */
if (xdg_cache_home && xdg_cache_home[0])
@@ -497,7 +500,7 @@ dir_find_xdg_dirs (char **config_dir, char **data_dir, char **cache_dir,
}
*cache_dir = strdup (path);
if (!*cache_dir)
goto error;
goto error_memory;
/* set runtime dir: $XDG_RUNTIME_DIR/weechat or same as cache dir */
if (xdg_runtime_dir && xdg_runtime_dir[0])
@@ -512,10 +515,19 @@ dir_find_xdg_dirs (char **config_dir, char **data_dir, char **cache_dir,
*runtime_dir = strdup (*cache_dir);
}
if (!*runtime_dir)
goto error;
goto error_memory;
return 1;
error_home:
string_fprintf (stderr,
_("Error: environment variable \"HOME\" is not defined\n"));
goto error;
error_memory:
string_fprintf (stderr, _("Error: not enough memory\n"));
goto error;
error:
if (*config_dir)
{
@@ -537,7 +549,6 @@ error:
free (*runtime_dir);
*runtime_dir = NULL;
}
string_fprintf (stderr, _("Error: not enough memory\n"));
return 0;
}
+9 -4
View File
@@ -598,10 +598,13 @@ doc_gen_user_options (const char *path, const char *lang)
free (default_value);
}
string_fprintf (
file,
"// end::%s_options[]\n",
old_config->name);
if (old_config)
{
string_fprintf (
file,
"// end::%s_options[]\n",
old_config->name);
}
arraylist_free (list_options);
@@ -1658,9 +1661,11 @@ doc_generate (const char *path)
* (this is used to generate documentation without installing WeeChat,
* that means no need to run `make install`)
*/
#ifdef ENABLE_NLS
localedir = getenv ("WEECHAT_DOCGEN_LOCALEDIR");
if (localedir && localedir[0])
bindtextdomain (PACKAGE, localedir);
#endif /* ENABLE_NLS */
for (i = 0; locales[i]; i++)
{
+11
View File
@@ -413,6 +413,7 @@ eval_string_cut (const char *text, int screen)
if (!tmp)
return strdup ("");
error = NULL;
number = strtol (tmp, &error, 10);
if (!error || error[0] || (number < 0))
{
@@ -453,6 +454,7 @@ eval_string_repeat (const char *text)
if (!tmp)
return strdup ("");
error = NULL;
number = strtol (tmp, &error, 10);
if (!error || error[0] || (number < 0))
{
@@ -538,6 +540,7 @@ eval_string_split (const char *text)
}
else
{
error = NULL;
number = strtol (str_number, &error, 10);
if (!error || error[0] || (number == 0))
goto end;
@@ -578,6 +581,7 @@ eval_string_split (const char *text)
}
else if (strncmp (list_flags[i], "max_items=", 10) == 0)
{
error = NULL;
max_items = strtol (list_flags[i] + 10, &error, 10);
if (!error || error[0] || (max_items < 0))
goto end;
@@ -686,6 +690,7 @@ eval_string_split_shell (const char *text)
}
else
{
error = NULL;
number = strtol (str_number, &error, 10);
if (!error || error[0] || (number == 0))
goto end;
@@ -766,6 +771,7 @@ eval_string_regex_group (const char *text, struct t_eval_context *eval_context)
}
else
{
error = NULL;
number = strtol (text, &error, 10);
if (!error || error[0])
number = -1;
@@ -897,6 +903,7 @@ eval_string_base_encode (const char *text)
if (!base)
goto end;
error = NULL;
number = strtol (base, &error, 10);
if (!error || error[0])
goto end;
@@ -946,6 +953,7 @@ eval_string_base_decode (const char *text)
if (!base)
goto end;
error = NULL;
number = strtol (base, &error, 10);
if (!error || error[0])
goto end;
@@ -1087,6 +1095,7 @@ eval_string_random (const char *text)
tmp = string_strndup (text, pos - text);
if (!tmp)
goto error;
error = NULL;
min_number = strtoll (tmp, &error, 10);
if (!error || error[0])
{
@@ -1095,6 +1104,7 @@ eval_string_random (const char *text)
}
free (tmp);
error = NULL;
max_number = strtoll (pos + 1, &error, 10);
if (!error || error[0])
goto error;
@@ -2616,6 +2626,7 @@ eval_expression (const char *expr, struct t_hashtable *pointers,
ptr_value = hashtable_get (options, "debug");
if (ptr_value && ptr_value[0])
{
error = NULL;
number = strtol (ptr_value, &error, 10);
if (error && !error[0] && (number >= 1))
{
+16 -8
View File
@@ -28,6 +28,7 @@
#include <string.h>
#include <time.h>
#include <sys/socket.h>
#include <sys/wait.h>
#include <errno.h>
#include "weechat.h"
@@ -38,7 +39,6 @@
#include "wee-log.h"
#include "wee-signal.h"
#include "wee-string.h"
#include "wee-sys.h"
#include "wee-util.h"
#include "../gui/gui-chat.h"
#include "../plugins/plugin.h"
@@ -629,20 +629,19 @@ hook_set (struct t_hook *hook, const char *property, const char *value)
}
/*
* Callback used to clean all children (forked processes) by acknowledging
* their end.
* Callback used to clean a process (forked processes) by acknowledging its end.
*/
int
hook_timer_clean_children_cb (const void *pointer, void *data,
int remaining_calls)
hook_timer_clean_process_cb (const void *pointer, void *data,
int remaining_calls)
{
/* make C compiler happy */
(void) pointer;
(void) data;
(void) remaining_calls;
sys_waitpid ();
waitpid (*((pid_t *)data), NULL, WNOHANG);
return WEECHAT_RC_OK;
}
@@ -652,9 +651,18 @@ hook_timer_clean_children_cb (const void *pointer, void *data,
*/
void
hook_schedule_clean_children ()
hook_schedule_clean_process (pid_t pid)
{
hook_timer (NULL, 100, 0, 1, &hook_timer_clean_children_cb, NULL, NULL);
pid_t *temp_pid;
/* temp_pid will be freed when the timer is removed */
temp_pid = malloc (sizeof (*temp_pid));
if (temp_pid)
{
*temp_pid = pid;
hook_timer (NULL, 100, 0, 1,
&hook_timer_clean_process_cb, NULL, temp_pid);
}
}
/*
+1 -1
View File
@@ -146,7 +146,7 @@ extern void hook_callback_end (struct t_hook *hook,
extern char *hook_get_description (struct t_hook *hook);
extern void hook_set (struct t_hook *hook, const char *property,
const char *value);
extern void hook_schedule_clean_children ();
extern void hook_schedule_clean_process (pid_t pid);
extern void unhook (struct t_hook *hook);
extern void unhook_all_plugin (struct t_weechat_plugin *plugin,
const char *subplugin);
+1
View File
@@ -3343,6 +3343,7 @@ string_parse_size (const char *size)
if (!str_number)
goto end;
error = NULL;
number = strtoll (str_number, &error, 10);
if (!error || error[0])
goto end;
+1 -5
View File
@@ -33,11 +33,7 @@
#include <locale.h>
#if defined(ENABLE_NLS) && !defined(_)
#ifdef HAVE_LIBINTL_H
#include <libintl.h>
#else
#include "../../intl/libintl.h"
#endif /* HAVE_LIBINTL_H */
#include <libintl.h>
#define _(string) gettext(string)
#define NG_(single,plural,number) ngettext(single,plural,number)
#ifdef gettext_noop
+63 -20
View File
@@ -439,31 +439,46 @@ gui_bar_item_custom_new (const char *name, const char *conditions,
if (gui_bar_item_custom_search (name))
return NULL;
if (gui_bar_item_search_default (name) >= 0)
return NULL;
option_conditions = NULL;
option_content = NULL;
new_bar_item_custom = NULL;
option_conditions = gui_bar_item_custom_create_option (
name,
GUI_BAR_ITEM_CUSTOM_OPTION_CONDITIONS,
conditions);
if (!option_conditions)
return NULL;
goto error;
option_content = gui_bar_item_custom_create_option (
name,
GUI_BAR_ITEM_CUSTOM_OPTION_CONTENT,
content);
if (!option_content)
{
config_file_option_free (option_conditions, 0);
return NULL;
}
goto error;
new_bar_item_custom = gui_bar_item_custom_new_with_options (
name,
option_conditions,
option_content);
if (!new_bar_item_custom)
goto error;
gui_bar_item_custom_create_bar_item (new_bar_item_custom);
if (!new_bar_item_custom->bar_item)
goto error;
gui_bar_item_update (name);
return new_bar_item_custom;
error:
if (new_bar_item_custom)
{
gui_bar_item_custom_create_bar_item (new_bar_item_custom);
gui_bar_item_update (name);
gui_bar_item_custom_free (new_bar_item_custom);
}
else
{
@@ -472,8 +487,7 @@ gui_bar_item_custom_new (const char *name, const char *conditions,
if (option_content)
config_file_option_free (option_content, 0);
}
return new_bar_item_custom;
return NULL;
}
/*
@@ -483,12 +497,13 @@ gui_bar_item_custom_new (const char *name, const char *conditions,
void
gui_bar_item_custom_use_temp_items ()
{
struct t_gui_bar_item_custom *ptr_temp_item;
struct t_gui_bar_item_custom *ptr_temp_item, *ptr_next_temp_item;
int i;
for (ptr_temp_item = gui_temp_custom_bar_items; ptr_temp_item;
ptr_temp_item = ptr_temp_item->next_item)
ptr_temp_item = gui_temp_custom_bar_items;
while (ptr_temp_item)
{
ptr_next_temp_item = ptr_temp_item->next_item;
for (i = 0; i < GUI_BAR_ITEM_CUSTOM_NUM_OPTIONS; i++)
{
if (!ptr_temp_item->options[i])
@@ -500,6 +515,20 @@ gui_bar_item_custom_use_temp_items ()
}
}
gui_bar_item_custom_create_bar_item (ptr_temp_item);
if (!ptr_temp_item->bar_item)
{
if (ptr_temp_item->prev_item)
(ptr_temp_item->prev_item)->next_item = ptr_temp_item->next_item;
if (ptr_temp_item->next_item)
(ptr_temp_item->next_item)->prev_item = ptr_temp_item->prev_item;
if (gui_temp_custom_bar_items == ptr_temp_item)
gui_temp_custom_bar_items = ptr_temp_item->next_item;
if (last_gui_temp_custom_bar_item == ptr_temp_item)
last_gui_temp_custom_bar_item = ptr_temp_item->prev_item;
gui_bar_item_custom_free_data (ptr_temp_item);
free (ptr_temp_item);
}
ptr_temp_item = ptr_next_temp_item;
}
/* remove any existing custom bar item */
@@ -534,6 +563,9 @@ gui_bar_item_custom_rename (struct t_gui_bar_item_custom *item,
if (gui_bar_item_custom_search (new_name))
return 0;
if (gui_bar_item_search_default (new_name) >= 0)
return 0;
old_name = strdup (item->name);
if (!old_name)
return 0;
@@ -570,6 +602,24 @@ gui_bar_item_custom_rename (struct t_gui_bar_item_custom *item,
return 1;
}
/*
* Frees data in a custom bar item.*
*/
void
gui_bar_item_custom_free_data (struct t_gui_bar_item_custom *item)
{
int i;
if (item->name)
free (item->name);
for (i = 0; i < GUI_BAR_ITEM_CUSTOM_NUM_OPTIONS; i++)
{
if (item->options[i])
config_file_option_free (item->options[i], 1);
}
}
/*
* Deletes a custom bar item.
*/
@@ -578,7 +628,6 @@ void
gui_bar_item_custom_free (struct t_gui_bar_item_custom *item)
{
char *name;
int i;
if (!item)
return;
@@ -599,13 +648,7 @@ gui_bar_item_custom_free (struct t_gui_bar_item_custom *item)
last_gui_custom_bar_item = item->prev_item;
/* free data */
if (item->name)
free (item->name);
for (i = 0; i < GUI_BAR_ITEM_CUSTOM_NUM_OPTIONS; i++)
{
if (item->options[i])
config_file_option_free (item->options[i], 1);
}
gui_bar_item_custom_free_data (item);
free (item);
+1
View File
@@ -69,6 +69,7 @@ extern struct t_gui_bar_item_custom *gui_bar_item_custom_new (const char *name,
extern void gui_bar_item_custom_use_temp_items ();
extern int gui_bar_item_custom_rename (struct t_gui_bar_item_custom *item,
const char *new_name);
extern void gui_bar_item_custom_free_data (struct t_gui_bar_item_custom *item);
extern void gui_bar_item_custom_free (struct t_gui_bar_item_custom *item);
extern void gui_bar_item_custom_free_all ();
+24
View File
@@ -99,6 +99,30 @@ gui_bar_item_valid (struct t_gui_bar_item *bar_item)
return 0;
}
/*
* Searches for a default bar item by name.
*
* Returns index in gui_bar_item_names[], -1 if not found.
*/
int
gui_bar_item_search_default (const char *item_name)
{
int i;
if (!item_name || !item_name[0])
return -1;
for (i = 0; i < GUI_BAR_NUM_ITEMS; i++)
{
if (strcmp (gui_bar_item_names[i], item_name) == 0)
return i;
}
/* default bar item not found */
return -1;
}
/*
* Searches for a bar item by name.
*/
+1
View File
@@ -89,6 +89,7 @@ extern char *gui_bar_item_names[];
/* functions */
extern int gui_bar_item_valid (struct t_gui_bar_item *bar_item);
extern int gui_bar_item_search_default (const char *item_name);
extern struct t_gui_bar_item *gui_bar_item_search (const char *name);
extern int gui_bar_item_used_in_bar (struct t_gui_bar *bar,
const char *item_name,
+4
View File
@@ -2213,6 +2213,7 @@ gui_buffer_set_unread (struct t_gui_buffer *buffer, const char *argument)
else if (argument[0] == '-')
{
/* move the unread marker N lines towards the first line */
error = NULL;
number = strtol (argument, &error, 10);
if (error && !error[0] && (number < 0))
{
@@ -2240,6 +2241,7 @@ gui_buffer_set_unread (struct t_gui_buffer *buffer, const char *argument)
else if (argument[0] == '+')
{
/* move the unread marker N lines towards the last line */
error = NULL;
number = strtol (argument, &error, 10);
if (error && !error[0] && (number > 0))
{
@@ -2265,6 +2267,7 @@ gui_buffer_set_unread (struct t_gui_buffer *buffer, const char *argument)
else
{
/* move the unread marker N lines from the end towards the first line */
error = NULL;
number = strtol (argument, &error, 10);
if (error && !error[0] && (number > 0))
{
@@ -2953,6 +2956,7 @@ gui_buffer_search_by_number_or_name (const char *string)
ptr_buffer = NULL;
error = NULL;
number = strtol (string, &error, 10);
if (error && !error[0])
{
+4
View File
@@ -597,6 +597,9 @@ gui_chat_printf_date_tags_internal (struct t_gui_buffer *buffer,
char *modifier_data, *string, *new_string, *pos_newline;
struct t_gui_line *new_line;
if (!buffer)
return;
new_line = NULL;
string = NULL;
modifier_data = NULL;
@@ -1076,6 +1079,7 @@ gui_chat_hsignal_quote_line_cb (const void *pointer, void *data,
hashtable_get (hashtable, "_chat_line_date") : NULL;
if (date)
{
error = NULL;
number = strtol (date, &error, 10);
if (error && !error[0])
{
+1 -1
View File
@@ -88,7 +88,7 @@ gui_history_buffer_add (struct t_gui_buffer *buffer, const char *string)
free (buffer->last_history->text);
free (buffer->last_history);
buffer->last_history = ptr_history;
buffer->num_history++;
buffer->num_history--;
}
}
}
+2 -2
View File
@@ -75,8 +75,8 @@ char *gui_key_modifier_list[] =
{ "meta-", "ctrl-", "shift-", NULL };
char *gui_key_alias_list[] =
{ "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", "f8", "f9", "f10", "f11",
"f12", "f13", "f14", "f15", "f16", "f17", "f18", "f19", "f20",
{ "f10", "f11", "f12", "f13", "f14", "f15", "f16", "f17", "f18", "f19", "f20",
"f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", "f8", "f9",
"home", "insert", "delete", "end", "backspace", "pgup", "pgdn",
"up", "down", "right", "left", "tab", "return", "comma", "space", NULL };
+3
View File
@@ -62,6 +62,7 @@ buflist_focus_cb (const void *pointer, void *data, struct t_hashtable *info)
ptr_bar_item_line = weechat_hashtable_get (info, "_bar_item_line");
if (!ptr_bar_item_line)
goto end;
error = NULL;
item_line = strtol (ptr_bar_item_line, &error, 10);
if (!error || error[0])
goto end;
@@ -250,9 +251,11 @@ buflist_hsignal_cb (const void *pointer, void *data, const char *signal,
return WEECHAT_RC_OK;
ptr_buffer = (struct t_gui_buffer *)value;
error = NULL;
number = strtol (ptr_number, &error, 10);
if (!error || error[0])
return WEECHAT_RC_OK;
error = NULL;
number2 = strtol (ptr_number2, &error, 10);
if (!error || error[0])
return WEECHAT_RC_OK;
+1 -2
View File
@@ -247,8 +247,7 @@ irc_config_compute_nick_colors ()
{
if (ptr_nick->color)
free (ptr_nick->color);
ptr_nick->color = irc_nick_find_color (ptr_server,
ptr_nick->name);
ptr_nick->color = irc_nick_find_color (ptr_nick->name);
}
}
if (ptr_channel->pv_remote_nick_color)
+2 -3
View File
@@ -1397,7 +1397,7 @@ irc_ctcp_recv (struct t_irc_server *server, time_t date,
if (ptr_nick)
nick_color = strdup (ptr_nick->color);
else if (nick)
nick_color = irc_nick_find_color (server, nick);
nick_color = irc_nick_find_color (nick);
else
nick_color = strdup (IRC_COLOR_CHAT_NICK);
if (irc_server_prefix_char_statusmsg (server, target[0]))
@@ -1492,8 +1492,7 @@ irc_ctcp_recv (struct t_irc_server *server, time_t date,
"%s%s%s%s%s%s",
weechat_prefix ("action"),
(nick_is_me) ?
IRC_COLOR_CHAT_NICK_SELF : irc_nick_color_for_pv (server,
ptr_channel,
IRC_COLOR_CHAT_NICK_SELF : irc_nick_color_for_pv (ptr_channel,
nick),
nick,
(pos_args) ? IRC_COLOR_RESET : "",
+8 -48
View File
@@ -197,10 +197,6 @@ irc_info_info_irc_nick_color_cb (const void *pointer, void *data,
const char *info_name,
const char *arguments)
{
char *pos_comma, *server;
const char *pos_nick;
struct t_irc_server *ptr_server;
/* make C compiler happy */
(void) pointer;
(void) data;
@@ -209,21 +205,7 @@ irc_info_info_irc_nick_color_cb (const void *pointer, void *data,
if (!arguments || !arguments[0])
return NULL;
ptr_server = NULL;
pos_nick = arguments;
pos_comma = strchr (arguments, ',');
if (pos_comma)
{
pos_nick = pos_comma + 1;
server = weechat_strndup (arguments, pos_comma - arguments);
if (server)
{
ptr_server = irc_server_search (server);
free (server);
}
}
return irc_nick_find_color (ptr_server, pos_nick);
return irc_nick_find_color (arguments);
}
/*
@@ -235,10 +217,6 @@ irc_info_info_irc_nick_color_name_cb (const void *pointer, void *data,
const char *info_name,
const char *arguments)
{
char *pos_comma, *server;
const char *pos_nick;
struct t_irc_server *ptr_server;
/* make C compiler happy */
(void) pointer;
(void) data;
@@ -247,21 +225,7 @@ irc_info_info_irc_nick_color_name_cb (const void *pointer, void *data,
if (!arguments || !arguments[0])
return NULL;
ptr_server = NULL;
pos_nick = arguments;
pos_comma = strchr (arguments, ',');
if (pos_comma)
{
pos_nick = pos_comma + 1;
server = weechat_strndup (arguments, pos_comma - arguments);
if (server)
{
ptr_server = irc_server_search (server);
free (server);
}
}
return irc_nick_find_color_name (ptr_server, pos_nick);
return irc_nick_find_color_name (arguments);
}
/*
@@ -1259,19 +1223,15 @@ irc_info_init ()
&irc_info_info_irc_nick_from_host_cb, NULL, NULL);
weechat_hook_info (
"irc_nick_color",
N_("get nick color code, ignoring case (this calls the info "
"\"nick_color_ignore_case\" with appropriate range, according "
"to the value of CASEMAPPING on the server, "
"defaulting to \"rfc1459\" if the server is not given)"),
N_("server,nickname (server is optional)"),
N_("get nick color code "
"(*deprecated* since version 1.5, replaced by \"nick_color\")"),
N_("nickname"),
&irc_info_info_irc_nick_color_cb, NULL, NULL);
weechat_hook_info (
"irc_nick_color_name",
N_("get nick color name, ignoring case (this calls the info "
"\"nick_color_name_ignore_case\" with appropriate range, according "
"to the value of CASEMAPPING on the server, "
"defaulting to \"rfc1459\" if the server is not given)"),
N_("server,nickname (server is optional)"),
N_("get nick color name "
"(*deprecated* since version 1.5, replaced by \"nick_color_name\")"),
N_("nickname"),
&irc_info_info_irc_nick_color_name_cb, NULL, NULL);
weechat_hook_info (
"irc_buffer",
+4
View File
@@ -281,6 +281,7 @@ irc_list_channel_match_filter (struct t_irc_server *server,
else if (strncmp (server->list->filter, "u:>", 3) == 0)
{
/* filter by users (> N)*/
error = NULL;
number = strtol (server->list->filter + 3, &error, 10);
if (error && !error[0] && channel->users > (int)number)
return 1;
@@ -288,6 +289,7 @@ irc_list_channel_match_filter (struct t_irc_server *server,
else if (strncmp (server->list->filter, "u:<", 3) == 0)
{
/* filter by users (< N)*/
error = NULL;
number = strtol (server->list->filter + 3, &error, 10);
if (error && !error[0] && channel->users < (int)number)
return 1;
@@ -295,6 +297,7 @@ irc_list_channel_match_filter (struct t_irc_server *server,
else if (strncmp (server->list->filter, "u:", 2) == 0)
{
/* filter by users */
error = NULL;
number = strtol (server->list->filter + 2, &error, 10);
if (error && !error[0] && channel->users >= (int)number)
return 1;
@@ -437,6 +440,7 @@ irc_list_parse_messages (struct t_irc_server *server, const char *output)
ptr_name++;
}
channel->name2 = strdup (ptr_name);
error = NULL;
number = strtol (params[2], &error, 10);
channel->users = (error && !error[0]) ? number : 0;
channel->topic = (num_params > 3) ?
+2
View File
@@ -625,6 +625,7 @@ irc_message_parse_cap_multiline_value (struct t_irc_server *server,
ptr_value = (const char *)weechat_hashtable_get (values, "max-bytes");
if (ptr_value)
{
error = NULL;
number = strtol (ptr_value, &error, 10);
if (error && !error[0])
server->multiline_max_bytes = number;
@@ -633,6 +634,7 @@ irc_message_parse_cap_multiline_value (struct t_irc_server *server,
ptr_value = (const char *)weechat_hashtable_get (values, "max-lines");
if (ptr_value)
{
error = NULL;
number = strtol (ptr_value, &error, 10);
if (error && !error[0])
server->multiline_max_lines = number;
+11 -38
View File
@@ -139,22 +139,9 @@ irc_nick_is_nick (struct t_irc_server *server, const char *string)
*/
char *
irc_nick_find_color (struct t_irc_server *server, const char *nickname)
irc_nick_find_color (const char *nickname)
{
char str_args[4096];
int casemapping, range;
casemapping = (server) ? server->casemapping : -1;
if ((casemapping < 0) || (casemapping >= IRC_SERVER_NUM_CASEMAPPING))
casemapping = IRC_SERVER_CASEMAPPING_RFC1459;
range = irc_server_casemapping_range[casemapping];
snprintf (str_args, sizeof (str_args),
"%s;%d",
(nickname) ? nickname : "",
range);
return weechat_info_get ("nick_color_ignore_case", str_args);
return weechat_info_get ("nick_color", nickname);
}
/*
@@ -164,22 +151,9 @@ irc_nick_find_color (struct t_irc_server *server, const char *nickname)
*/
char *
irc_nick_find_color_name (struct t_irc_server *server, const char *nickname)
irc_nick_find_color_name (const char *nickname)
{
char str_args[4096];
int casemapping, range;
casemapping = (server) ? server->casemapping : -1;
if ((casemapping < 0) || (casemapping >= IRC_SERVER_NUM_CASEMAPPING))
casemapping = IRC_SERVER_CASEMAPPING_RFC1459;
range = irc_server_casemapping_range[casemapping];
snprintf (str_args, sizeof (str_args),
"%s;%d",
(nickname) ? nickname: "",
range);
return weechat_info_get ("nick_color_name_ignore_case", str_args);
return weechat_info_get ("nick_color_name", nickname);
}
/*
@@ -422,7 +396,7 @@ irc_nick_get_color_for_nicklist (struct t_irc_server *server,
if (irc_server_strcasecmp (server, nick->name, server->nick) == 0)
return strdup (nick_color_self);
else
return irc_nick_find_color_name (server, nick->name);
return irc_nick_find_color_name (nick->name);
}
return strdup (nick_color_bar_fg);
@@ -620,7 +594,7 @@ irc_nick_new (struct t_irc_server *server, struct t_irc_channel *channel,
if (irc_server_strcasecmp (server, new_nick->name, server->nick) == 0)
new_nick->color = strdup (IRC_COLOR_CHAT_NICK_SELF);
else
new_nick->color = irc_nick_find_color (server, new_nick->name);
new_nick->color = irc_nick_find_color (new_nick->name);
/* add nick to end of list */
new_nick->prev_nick = channel->last_nick;
@@ -669,7 +643,7 @@ irc_nick_change (struct t_irc_server *server, struct t_irc_channel *channel,
if (nick_is_me)
nick->color = strdup (IRC_COLOR_CHAT_NICK_SELF);
else
nick->color = irc_nick_find_color (server, nick->name);
nick->color = irc_nick_find_color (nick->name);
/* add nick in nicklist */
irc_nick_nicklist_add (server, channel, nick);
@@ -1011,7 +985,7 @@ irc_nick_as_prefix (struct t_irc_server *server, struct t_irc_nick *nick,
else if (nick)
color = strdup (nick->color);
else if (nickname)
color = irc_nick_find_color (server, nickname);
color = irc_nick_find_color (nickname);
else
color = strdup (IRC_COLOR_CHAT_NICK);
@@ -1054,7 +1028,7 @@ irc_nick_color_for_msg (struct t_irc_server *server, int server_message,
{
return IRC_COLOR_CHAT_NICK_SELF;
}
color_found = irc_nick_find_color (server, nickname);
color_found = irc_nick_find_color (nickname);
index_color = (index_color + 1) % 16;
snprintf (color[index_color], sizeof (color[index_color]),
"%s",
@@ -1072,13 +1046,12 @@ irc_nick_color_for_msg (struct t_irc_server *server, int server_message,
*/
const char *
irc_nick_color_for_pv (struct t_irc_server *server,
struct t_irc_channel *channel, const char *nickname)
irc_nick_color_for_pv (struct t_irc_channel *channel, const char *nickname)
{
if (weechat_config_boolean (irc_config_look_color_pv_nick_like_channel))
{
if (!channel->pv_remote_nick_color)
channel->pv_remote_nick_color = irc_nick_find_color (server, nickname);
channel->pv_remote_nick_color = irc_nick_find_color (nickname);
if (channel->pv_remote_nick_color)
return channel->pv_remote_nick_color;
}
+3 -6
View File
@@ -49,10 +49,8 @@ struct t_irc_nick
extern int irc_nick_valid (struct t_irc_channel *channel,
struct t_irc_nick *nick);
extern int irc_nick_is_nick (struct t_irc_server *server, const char *string);
extern char *irc_nick_find_color (struct t_irc_server *server,
const char *nickname);
extern char *irc_nick_find_color_name (struct t_irc_server *server,
const char *nickname);
extern char *irc_nick_find_color (const char *nickname);
extern char *irc_nick_find_color_name (const char *nickname);
extern void irc_nick_set_host (struct t_irc_nick *nick, const char *host);
extern int irc_nick_is_op_or_higher (struct t_irc_server *server,
struct t_irc_nick *nick);
@@ -103,8 +101,7 @@ extern const char *irc_nick_color_for_msg (struct t_irc_server *server,
int server_message,
struct t_irc_nick *nick,
const char *nickname);
extern const char * irc_nick_color_for_pv (struct t_irc_server *server,
struct t_irc_channel *channel,
extern const char * irc_nick_color_for_pv (struct t_irc_channel *channel,
const char *nickname);
extern char *irc_nick_default_ban_mask (struct t_irc_nick *nick);
extern struct t_hdata *irc_nick_hdata_nick_cb (const void *pointer,
+11 -11
View File
@@ -341,6 +341,7 @@ irc_protocol_parse_time (const char *time)
pos = strchr (time2, ',');
if (pos)
pos[0] = '\0';
error = NULL;
value = strtol (time2, &error, 10);
if (error && !error[0] && (value >= 0))
time_value = (int)value;
@@ -2310,8 +2311,8 @@ IRC_PROTOCOL_CALLBACK(nick)
{
if (weechat_config_boolean (irc_config_look_color_pv_nick_like_channel))
{
old_color = irc_nick_find_color (server, nick);
new_color = irc_nick_find_color (server, params[0]);
old_color = irc_nick_find_color (nick);
new_color = irc_nick_find_color (params[0]);
}
else
{
@@ -3193,7 +3194,6 @@ IRC_PROTOCOL_CALLBACK(privmsg)
else
{
color = irc_nick_find_color_name (
server,
(ptr_nick) ? ptr_nick->name : nick);
str_color = irc_color_for_tags (color);
if (color)
@@ -3308,7 +3308,7 @@ IRC_PROTOCOL_CALLBACK(privmsg)
{
if (weechat_config_boolean (irc_config_look_color_pv_nick_like_channel))
{
color = irc_nick_find_color_name (server, nick);
color = irc_nick_find_color_name (nick);
str_color = irc_color_for_tags (color);
if (color)
free (color);
@@ -3361,8 +3361,7 @@ IRC_PROTOCOL_CALLBACK(privmsg)
irc_nick_as_prefix (
server, NULL, nick,
(nick_is_me) ?
IRC_COLOR_CHAT_NICK_SELF : irc_nick_color_for_pv (server,
ptr_channel,
IRC_COLOR_CHAT_NICK_SELF : irc_nick_color_for_pv (ptr_channel,
nick)),
(msg_args2) ? msg_args2 : msg_args);
}
@@ -3457,7 +3456,7 @@ IRC_PROTOCOL_CALLBACK(quit)
_("%s%s%s%s%s%s%s%s%s%s has quit %s(%s%s%s)"),
weechat_prefix ("quit"),
(ptr_channel->type == IRC_CHANNEL_TYPE_PRIVATE) ?
irc_nick_color_for_pv (server, ptr_channel, nick) :
irc_nick_color_for_pv (ptr_channel, nick) :
irc_nick_color_for_msg (server, 1, ptr_nick, nick),
nick,
IRC_COLOR_CHAT_DELIMITERS,
@@ -3492,7 +3491,7 @@ IRC_PROTOCOL_CALLBACK(quit)
_("%s%s%s%s%s%s%s%s%s%s has quit"),
weechat_prefix ("quit"),
(ptr_channel->type == IRC_CHANNEL_TYPE_PRIVATE) ?
irc_nick_color_for_pv (server, ptr_channel, nick) :
irc_nick_color_for_pv (ptr_channel, nick) :
irc_nick_color_for_msg (server, 1, ptr_nick, nick),
nick,
IRC_COLOR_CHAT_DELIMITERS,
@@ -6322,7 +6321,7 @@ IRC_PROTOCOL_CALLBACK(353)
}
else
{
color = irc_nick_find_color (server, nickname);
color = irc_nick_find_color (nickname);
weechat_string_dyn_concat (str_nicks, color, -1);
if (color)
free (color);
@@ -6610,7 +6609,7 @@ irc_protocol_get_string_channel_nicks (struct t_irc_server *server,
}
else
{
color = irc_nick_find_color (server, nickname);
color = irc_nick_find_color (nickname);
weechat_string_dyn_concat (str_nicks, color, -1);
if (color)
free (color);
@@ -8036,7 +8035,8 @@ irc_protocol_recv_command (struct t_irc_server *server,
IRCB(331, 1, 0, 331), /* no topic for channel */
IRCB(332, 0, 1, 332), /* topic of channel */
IRCB(333, 1, 0, 333), /* topic info (nick/date) */
IRCB(335, 1, 0, whois_nick_msg), /* is a bot on */
IRCB(335, 1, 0, whois_nick_msg), /* whois (is a bot on) */
IRCB(337, 1, 0, whois_nick_msg), /* whois (is hiding idle time) */
IRCB(338, 1, 0, 338), /* whois (host) */
IRCB(341, 1, 0, 341), /* inviting */
IRCB(343, 1, 0, 330_343), /* is opered as */
+4
View File
@@ -462,6 +462,7 @@ irc_redirect_new_with_commands (struct t_irc_server *server,
if (pos)
{
pos[0] = '\0';
error = NULL;
value = strtol (pos + 1, &error, 10);
if (!error || error[0])
value = -1;
@@ -1309,6 +1310,7 @@ irc_redirect_pattern_hsignal_cb (const void *pointer, void *data,
timeout = 0;
if (str_timeout && str_timeout[0])
{
error = NULL;
number = (int)strtol (str_timeout, &error, 10);
if (error && !error[0])
timeout = number;
@@ -1379,6 +1381,7 @@ irc_redirect_command_hsignal_cb (const void *pointer, void *data,
count = 1;
if (str_count && str_count[0])
{
error = NULL;
number = (int)strtol (str_count, &error, 10);
if (error && !error[0])
count = number;
@@ -1387,6 +1390,7 @@ irc_redirect_command_hsignal_cb (const void *pointer, void *data,
timeout = 0;
if (str_timeout && str_timeout[0])
{
error = NULL;
number = (int)strtol (str_timeout, &error, 10);
if (error && !error[0])
timeout = number;
+4 -2
View File
@@ -2850,11 +2850,10 @@ irc_server_outqueue_send (struct t_irc_server *server)
'\r');
if (pos)
pos[0] = '\0';
irc_raw_print (server, IRC_RAW_FLAG_SEND |
((server->outqueue[priority]->modified) ? IRC_RAW_FLAG_MODIFIED : 0),
server->outqueue[priority]->message_after_mod);
if (pos)
pos[0] = '\r';
/* send signal with command that will be sent to server */
(void) irc_server_send_signal (
@@ -2872,6 +2871,9 @@ irc_server_outqueue_send (struct t_irc_server *server)
if (tags_to_send)
free (tags_to_send);
if (pos)
pos[0] = '\r';
/* send command */
irc_server_send (
server, server->outqueue[priority]->message_after_mod,
-1
View File
@@ -261,7 +261,6 @@ logger_backlog_file (struct t_gui_buffer *buffer, const char *filename,
struct t_arraylist *last_lines, *messages;
int i, num_msgs, old_input_multiline;
num_msgs = 0;
last_lines = logger_tail_file (filename, lines);
if (!last_lines)
return;
+2
View File
@@ -877,6 +877,7 @@ plugin_api_info_nick_color_ignore_case_cb (const void *pointer, void *data,
case_range = -1;
if (num_items >= 2)
{
error = NULL;
number = strtol (items[1], &error, 10);
if (error && !error[0])
case_range = (int)number;
@@ -916,6 +917,7 @@ plugin_api_info_nick_color_name_ignore_case_cb (const void *pointer, void *data,
case_range = -1;
if (num_items >= 2)
{
error = NULL;
number = strtol (items[1], &error, 10);
if (error && !error[0])
case_range = (int)number;
+7
View File
@@ -616,6 +616,13 @@ relay_irc_signal_irc_disc_cb (const void *pointer, void *data,
if (strcmp ((char *)signal_data, client->protocol_args) == 0)
{
relay_irc_sendf (client,
":%s ERROR :WeeChat: disconnected from server \"%s\"",
RELAY_IRC_DATA(client, address),
client->protocol_args);
relay_irc_sendf (client,
":%s ERROR :Closing Link",
RELAY_IRC_DATA(client, address));
relay_client_set_status (client, RELAY_STATUS_DISCONNECTED);
}
+1
View File
@@ -247,6 +247,7 @@ relay_auth_parse_pbkdf2 (const char *parameters,
}
/* parameter 2: iterations */
error = NULL;
*iterations = (int)strtol (argv[1], &error, 10);
if (!error || error[0])
*iterations = 0;
+1 -1
View File
@@ -287,7 +287,7 @@ weechat_ruby_print_exception (VALUE err)
err_class = StringValuePtr (class_name);
}
if (strcmp (err_class, "SyntaxError") == 0)
if (err_class && (strcmp (err_class, "SyntaxError") == 0))
{
tmp3 = rb_inspect (err);
weechat_printf (NULL,
+1
View File
@@ -63,6 +63,7 @@ xfer_network_convert_integer_to_ipv4 (const char *str_address)
if (!str_address || !str_address[0])
return NULL;
error = NULL;
number = strtoll (str_address, &error, 10);
if (!error || error[0] || (number <= 0) || (number > UINT32_MAX))
return NULL;
+4 -3
View File
@@ -1064,6 +1064,9 @@ xfer_add_cb (const void *pointer, void *data,
token = weechat_infolist_string (infolist, "token");
protocol = XFER_NO_PROTOCOL;
memset (&local_addr_storage, 0, sizeof (local_addr_storage));
local_addr_length = sizeof (local_addr_storage);
if (!plugin_name || !plugin_id || !str_type || !remote_nick || !local_nick)
{
weechat_printf (NULL,
@@ -1234,8 +1237,6 @@ xfer_add_cb (const void *pointer, void *data,
{
/* no own_ip, so bind_addr's family comes from irc connection */
/* use the local interface, from the server socket */
memset (&local_addr_storage, 0, sizeof (local_addr_storage));
local_addr_length = sizeof (local_addr_storage);
server_sock = weechat_infolist_integer (infolist, "socket");
if (getsockname (server_sock, (struct sockaddr *)&local_addr_storage, &local_addr_length))
{
@@ -1330,7 +1331,7 @@ xfer_add_cb (const void *pointer, void *data,
}
}
if (XFER_IS_FILE(type))
if (XFER_IS_FILE(type) && filename2)
{
/* extract short filename (without path) */
pos = strrchr (filename2, DIR_SEPARATOR_CHAR);
+2
View File
@@ -903,6 +903,7 @@ TEST(CoreString, ExpandHome)
int length_home;
home = getenv ("HOME");
CHECK(home);
length_home = strlen (home);
POINTERS_EQUAL(NULL, string_expand_home (NULL));
@@ -927,6 +928,7 @@ TEST(CoreString, EvalPathHome)
struct t_hashtable *extra_vars, *options;
home = getenv ("HOME");
CHECK(home);
length_home = strlen (home);
length_weechat_config_dir = strlen (weechat_config_dir);
@@ -464,6 +464,7 @@ TEST(GuiBarItemCustom, Rename)
/*
* Tests functions:
* gui_bar_item_custom_free_data
* gui_bar_item_custom_free
* gui_bar_item_custom_free_all
*/
+15
View File
@@ -53,6 +53,21 @@ TEST(GuiBarItem, Valid)
LONGS_EQUAL(0, gui_bar_item_valid (gui_bar_items + 1));
}
/*
* Tests functions:
* gui_bar_item_search_default
*/
TEST(GuiBarItem, SearchDefault)
{
LONGS_EQUAL(-1, gui_bar_item_search_default (NULL));
LONGS_EQUAL(-1, gui_bar_item_search_default (""));
LONGS_EQUAL(-1, gui_bar_item_search_default ("zzz"));
CHECK(gui_bar_item_search_default ("scroll") >= 0);
CHECK(gui_bar_item_search_default ("time") >= 0);
}
/*
* Tests functions:
* gui_bar_item_search
+14
View File
@@ -1053,18 +1053,32 @@ TEST(GuiKey, SeemsValid)
LONGS_EQUAL(0, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "meta-cb"));
LONGS_EQUAL(0, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "meta-updown"));
LONGS_EQUAL(0, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "@chat:button1"));
LONGS_EQUAL(0, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "meta-test"));
LONGS_EQUAL(0, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "ctrl-test"));
LONGS_EQUAL(0, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "shift-test"));
/* valid keys */
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "a"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "A"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "é"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "/"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "f1"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "f10"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "f11"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "f2"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "f20"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "meta-a"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "meta-ctrl-a"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "meta-c,b"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "meta-w,meta-up"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "ctrl-left"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "ctrl-u"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "shift-home"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "shift-f1"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "shift-f10"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "shift-f11"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "shift-f2"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_DEFAULT, "shift-f20"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_CURSOR, "@chat:q"));
LONGS_EQUAL(1, gui_key_seems_valid (GUI_KEY_CONTEXT_MOUSE, "@chat:button1"));
}
+1 -70
View File
@@ -184,76 +184,7 @@ TEST(IrcNick, IsNick)
TEST(IrcNick, IrcNickFindColor)
{
struct t_irc_server *server;
char *str, str_color[128];
server = irc_server_alloc ("my_ircd");
CHECK(server);
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("default"));
WEE_TEST_STR(str_color, irc_nick_find_color (NULL, NULL));
WEE_TEST_STR("default", irc_nick_find_color_name (NULL, NULL));
WEE_TEST_STR(str_color, irc_nick_find_color (server, NULL));
WEE_TEST_STR("default", irc_nick_find_color_name (server, NULL));
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("142"));
WEE_TEST_STR(str_color, irc_nick_find_color (NULL, "NICK]"));
WEE_TEST_STR(str_color, irc_nick_find_color (NULL, "nick}"));
WEE_TEST_STR("142", irc_nick_find_color_name (NULL, "NICK]"));
WEE_TEST_STR("142", irc_nick_find_color_name (NULL, "nick}"));
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("lightcyan"));
WEE_TEST_STR(str_color, irc_nick_find_color (NULL, "NICK^A"));
WEE_TEST_STR(str_color, irc_nick_find_color (NULL, "nick~a"));
WEE_TEST_STR("lightcyan", irc_nick_find_color_name (NULL, "NICK^A"));
WEE_TEST_STR("lightcyan", irc_nick_find_color_name (NULL, "nick~a"));
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("142"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "NICK]"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "nick}"));
WEE_TEST_STR("142", irc_nick_find_color_name (server, "NICK]"));
WEE_TEST_STR("142", irc_nick_find_color_name (server, "nick}"));
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("lightcyan"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "NICK^A"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "nick~a"));
WEE_TEST_STR("lightcyan", irc_nick_find_color_name (server, "NICK^A"));
WEE_TEST_STR("lightcyan", irc_nick_find_color_name (server, "nick~a"));
server->casemapping = IRC_SERVER_CASEMAPPING_STRICT_RFC1459;
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("142"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "NICK]"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "nick}"));
WEE_TEST_STR("142", irc_nick_find_color_name (server, "NICK]"));
WEE_TEST_STR("142", irc_nick_find_color_name (server, "nick}"));
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("176"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "NICK^A"));
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("lightcyan"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "nick~a"));
WEE_TEST_STR("176", irc_nick_find_color_name (server, "NICK^A"));
WEE_TEST_STR("lightcyan", irc_nick_find_color_name (server, "nick~a"));
server->casemapping = IRC_SERVER_CASEMAPPING_ASCII;
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("169"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "NICK]"));
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("142"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "nick}"));
WEE_TEST_STR("169", irc_nick_find_color_name (server, "NICK]"));
WEE_TEST_STR("142", irc_nick_find_color_name (server, "nick}"));
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("176"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "NICK^A"));
snprintf (str_color, sizeof (str_color), "%s", gui_color_get_custom ("lightcyan"));
WEE_TEST_STR(str_color, irc_nick_find_color (server, "nick~a"));
WEE_TEST_STR("176", irc_nick_find_color_name (server, "NICK^A"));
WEE_TEST_STR("lightcyan", irc_nick_find_color_name (server, "nick~a"));
irc_server_free (server);
/* TODO: write tests */
}
/*
+10 -1
View File
@@ -3562,7 +3562,8 @@ TEST(IrcProtocolWithServer, 221)
* 319: whois (channels)
* 320: whois (identified user)
* 326: whois (has oper privs)
* 335: is a bot on
* 335: whois (is a bot on)
* 337: whois ((is hiding idle time)
* 378: whois (connecting from)
* 379: whois (using modes)
* 671: whois (secure connection)
@@ -3621,6 +3622,10 @@ TEST(IrcProtocolWithServer, whois_nick_msg)
CHECK_ERROR_PARAMS("335", 0, 2);
RECV(":server 335 alice");
CHECK_ERROR_PARAMS("335", 1, 2);
RECV(":server 337");
CHECK_ERROR_PARAMS("337", 0, 2);
RECV(":server 337 alice");
CHECK_ERROR_PARAMS("337", 1, 2);
RECV(":server 378");
CHECK_ERROR_PARAMS("378", 0, 2);
RECV(":server 378 alice");
@@ -3687,6 +3692,10 @@ TEST(IrcProtocolWithServer, whois_nick_msg)
CHECK_SRV("--", "[bob] is a bot", "irc_335,irc_numeric,log3");
RECV(":server 335 alice bob");
CHECK_SRV("--", "bob", "irc_335,irc_numeric,log3");
RECV(":server 337 alice bob :is hiding their idle time");
CHECK_SRV("--", "[bob] is hiding their idle time", "irc_337,irc_numeric,log3");
RECV(":server 337 alice bob");
CHECK_SRV("--", "bob", "irc_337,irc_numeric,log3");
RECV(":server 378 alice bob");
CHECK_SRV("--", "bob", "irc_378,irc_numeric,log3");
RECV(":server 378 alice bob :connecting from");
+2 -2
View File
@@ -39,8 +39,8 @@
# devel-number the devel version as hex number ("0x04010000" for "4.1.0-dev")
#
weechat_stable="4.1.0"
weechat_devel="4.1.0"
weechat_stable="4.1.2"
weechat_devel="4.1.2"
stable_major=$(echo "${weechat_stable}" | cut -d"." -f1)
stable_minor=$(echo "${weechat_stable}" | cut -d"." -f2)