diff options
author | Sébastien Helleu <flashcode@flashtux.org> | 2023-10-22 21:02:41 +0200 |
---|---|---|
committer | Sébastien Helleu <flashcode@flashtux.org> | 2023-10-22 21:02:41 +0200 |
commit | 3cc400a9d60eba98cd4f62046664f927796fa6fd (patch) | |
tree | 908bcd0434a8ca8298d2db67da01c3eef0aad3a4 | |
parent | d6343020aafa86e6819d3d12aac46c4f009d65a0 (diff) | |
download | weechat-3cc400a9d60eba98cd4f62046664f927796fa6fd.zip |
core: add number of processes in command `/sys waitpid`
-rw-r--r-- | ChangeLog.adoc | 1 | ||||
-rw-r--r-- | po/cs.po | 8 | ||||
-rw-r--r-- | po/de.po | 8 | ||||
-rw-r--r-- | po/es.po | 8 | ||||
-rw-r--r-- | po/fr.po | 10 | ||||
-rw-r--r-- | po/hu.po | 8 | ||||
-rw-r--r-- | po/it.po | 8 | ||||
-rw-r--r-- | po/ja.po | 8 | ||||
-rw-r--r-- | po/pl.po | 8 | ||||
-rw-r--r-- | po/pt.po | 8 | ||||
-rw-r--r-- | po/pt_BR.po | 8 | ||||
-rw-r--r-- | po/ru.po | 8 | ||||
-rw-r--r-- | po/sr.po | 8 | ||||
-rw-r--r-- | po/tr.po | 8 | ||||
-rw-r--r-- | po/weechat.pot | 8 | ||||
-rw-r--r-- | src/core/wee-command.c | 24 | ||||
-rw-r--r-- | src/core/wee-sys.c | 7 | ||||
-rw-r--r-- | src/core/wee-sys.h | 2 | ||||
-rw-r--r-- | src/plugins/xfer/xfer-network.c | 2 |
19 files changed, 123 insertions, 27 deletions
diff --git a/ChangeLog.adoc b/ChangeLog.adoc index a4865a1e5..71c02f5cb 100644 --- a/ChangeLog.adoc +++ b/ChangeLog.adoc @@ -15,6 +15,7 @@ For a list of important changes that require manual actions, please look at rele New features:: + * core: add number of processes in command `/sys waitpid` * core, alias, trigger: allow wildcard in commands `/bar`, `/item`, `/proxy`, `/alias` and `/trigger` (issue #1956) * irc: add option irc.look.ignore_tag_messages (issue #989) @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:09+0200\n" "Last-Translator: Ondřej Súkup <mimi.vx@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -3114,6 +3114,9 @@ msgstr "" msgid "system actions" msgstr "seznam konfiguračních možností" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -3137,6 +3140,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + #, fuzzy #| msgid "values for a configuration option" msgid "toggle value of a config option" @@ -26,7 +26,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:09+0200\n" "Last-Translator: Nils Görs <weechatter@arcor.de>\n" "Language-Team: German <kde-i18n-de@kde.org>\n" @@ -3274,6 +3274,9 @@ msgstr "" msgid "system actions" msgstr "Systemaktionen" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -3302,6 +3305,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + msgid "toggle value of a config option" msgstr "den Wert einer Konfigurationsoption umschalten" @@ -22,7 +22,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:09+0200\n" "Last-Translator: Santiago Forero <santiago@forero.xyz>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -3217,6 +3217,9 @@ msgstr "" msgid "system actions" msgstr "lista de opciones" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -3240,6 +3243,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + #, fuzzy #| msgid "values for a configuration option" msgid "toggle value of a config option" @@ -21,8 +21,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" -"PO-Revision-Date: 2023-10-20 13:09+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" +"PO-Revision-Date: 2023-10-20 21:02+0200\n" "Last-Translator: Sébastien Helleu <flashcode@flashtux.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "Language: fr\n" @@ -3355,6 +3355,9 @@ msgstr "" msgid "system actions" msgstr "actions système" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "get rlimit|rusage || suspend || waitpid <nombre>" + msgid "raw[get]: display system info" msgstr "raw[get] : afficher des informations système" @@ -3383,6 +3386,9 @@ msgstr "" "raw[waitpid] : prendre connaissance des processus fils qui sont terminés " "(pour éviter les processus \"zombies\")" +msgid "number: number of processes to clean" +msgstr "nombre : nombre de processus à nettoyer" + msgid "toggle value of a config option" msgstr "basculer la valeur d'une option de configuration" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:09+0200\n" "Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -2974,6 +2974,9 @@ msgstr "" msgid "system actions" msgstr "konfigurációs paraméterek beállítása" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -2995,6 +2998,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + #, fuzzy msgid "toggle value of a config option" msgstr "Nem található az opció\n" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:10+0200\n" "Last-Translator: Esteban I. Ruiz Moreno <exio4.com@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -3107,6 +3107,9 @@ msgstr "" msgid "system actions" msgstr "elenco delle opzioni" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -3133,6 +3136,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + #, fuzzy #| msgid "values for a configuration option" msgid "toggle value of a config option" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:10+0200\n" "Last-Translator: AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>\n" "Language-Team: Japanese <https://github.com/l/weechat/tree/master/" @@ -3215,6 +3215,9 @@ msgstr "" msgid "system actions" msgstr "fset オプション" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -3241,6 +3244,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + #, fuzzy #| msgid "values for a configuration option" msgid "toggle value of a config option" @@ -22,7 +22,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:10+0200\n" "Last-Translator: Krzysztof Korościk <soltys@soltys.info>\n" "Language-Team: Polish <kde-i18n-doc@kde.org>\n" @@ -3311,6 +3311,9 @@ msgstr "" msgid "system actions" msgstr "opcje fset" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -3338,6 +3341,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + msgid "toggle value of a config option" msgstr "przełącza wartość opcji konfiguracyjnej" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:10+0200\n" "Last-Translator: Vasco Almeida <vascomalmeida@sapo.pt>\n" "Language-Team: Portuguese <>\n" @@ -3217,6 +3217,9 @@ msgstr "" msgid "system actions" msgstr "lista de opções" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -3243,6 +3246,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + #, fuzzy #| msgid "values for a configuration option" msgid "toggle value of a config option" diff --git a/po/pt_BR.po b/po/pt_BR.po index f7af79fe0..ec2d90976 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:11+0200\n" "Last-Translator: Érico Nogueira <ericonr@disroot.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -3136,6 +3136,9 @@ msgstr "" msgid "system actions" msgstr "lista de opções" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -3159,6 +3162,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + #, fuzzy #| msgid "values for a configuration option" msgid "toggle value of a config option" @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:11+0200\n" "Last-Translator: Aleksey V Zapparov AKA ixti <ixti@member.fsf.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -2997,6 +2997,9 @@ msgstr "" msgid "system actions" msgstr "настроить параметры конфигурации" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -3018,6 +3021,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + #, fuzzy msgid "toggle value of a config option" msgstr "Не найден параметр\n" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:11+0200\n" "Last-Translator: Ivan Pešić <ivan.pesic@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -3237,6 +3237,9 @@ msgstr "" msgid "system actions" msgstr "системске акције" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -3265,6 +3268,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + msgid "toggle value of a config option" msgstr "пребацује вредност опције конфигурације" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\n" "PO-Revision-Date: 2023-10-20 13:11+0200\n" "Last-Translator: Emir SARI <emir_sari@icloud.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -3249,6 +3249,9 @@ msgstr "" msgid "system actions" msgstr "fset seçenekleri" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -3276,6 +3279,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + msgid "toggle value of a config option" msgstr "bir yapılandırma seçeneğinin değerini aç/kapat" diff --git a/po/weechat.pot b/po/weechat.pot index 9c066ad57..688f02ea9 100644 --- a/po/weechat.pot +++ b/po/weechat.pot @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2023-10-20 11:17+0200\n" +"POT-Creation-Date: 2023-10-20 21:02+0200\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" @@ -2786,6 +2786,9 @@ msgstr "" msgid "system actions" msgstr "" +msgid "get rlimit|rusage || suspend || waitpid <number>" +msgstr "" + msgid "raw[get]: display system info" msgstr "" @@ -2807,6 +2810,9 @@ msgid "" "\"zombie\" processes)" msgstr "" +msgid "number: number of processes to clean" +msgstr "" + msgid "toggle value of a config option" msgstr "" diff --git a/src/core/wee-command.c b/src/core/wee-command.c index b777f6b51..f15390afa 100644 --- a/src/core/wee-command.c +++ b/src/core/wee-command.c @@ -6723,6 +6723,9 @@ COMMAND_CALLBACK(set) COMMAND_CALLBACK(sys) { + long value; + char *error; + /* make C compiler happy */ (void) pointer; (void) data; @@ -6732,8 +6735,7 @@ COMMAND_CALLBACK(sys) if (string_strcmp (argv[1], "get") == 0) { - COMMAND_MIN_ARGS(2, "get"); - + COMMAND_MIN_ARGS(3, "get"); if (string_strcmp (argv[2], "rlimit") == 0) sys_display_rlimit (); else if (string_strcmp (argv[2], "rusage") == 0) @@ -6751,7 +6753,12 @@ COMMAND_CALLBACK(sys) if (string_strcmp (argv[1], "waitpid") == 0) { - sys_waitpid (); + COMMAND_MIN_ARGS(3, "waitpid"); + error = NULL; + value = strtol (argv[2], &error, 10); + if (!error || error[0]) + COMMAND_ERROR; + sys_waitpid ((int)value); return WEECHAT_RC_OK; } @@ -9094,9 +9101,9 @@ command_init () hook_command ( NULL, "sys", N_("system actions"), - "get rlimit|rusage" - " || suspend" - " || waitpid", + N_("get rlimit|rusage" + " || suspend" + " || waitpid <number>"), CMD_ARGS_DESC( N_("raw[get]: display system info"), N_("raw[rlimit]: display resource limits " @@ -9105,10 +9112,11 @@ command_init () N_("raw[suspend]: suspend WeeChat and go back to the shell, by sending " "signal SIGTSTP to the WeeChat process") , N_("raw[waitpid]: acknowledge the end of children processes " - "(to prevent \"zombie\" processes)")), + "(to prevent \"zombie\" processes)"), + N_("number: number of processes to clean")), "get rlimit|rusage" " || suspend" - " || waitpid", + " || waitpid 1|10|100|1000", &command_sys, NULL, NULL); hook_command ( NULL, "toggle", diff --git a/src/core/wee-sys.c b/src/core/wee-sys.c index 7560b80aa..0a6fd8ec6 100644 --- a/src/core/wee-sys.c +++ b/src/core/wee-sys.c @@ -349,13 +349,16 @@ sys_display_rusage () */ void -sys_waitpid () +sys_waitpid (int number_processes) { int i; + if (number_processes < 1) + return; + /* acknowledge the end of up to 42 forked processes */ i = 0; - while ((i < 42) && (waitpid (-1, NULL, WNOHANG) > 0)) + while ((i < number_processes) && (waitpid (-1, NULL, WNOHANG) > 0)) { i++; } diff --git a/src/core/wee-sys.h b/src/core/wee-sys.h index eb4e7bcb9..d264d5f20 100644 --- a/src/core/wee-sys.h +++ b/src/core/wee-sys.h @@ -31,6 +31,6 @@ struct t_rlimit_resource extern void sys_setrlimit (); extern void sys_display_rlimit (); extern void sys_display_rusage (); -extern void sys_waitpid (); +extern void sys_waitpid (int number_processes); #endif /* WEECHAT_SYS_H */ diff --git a/src/plugins/xfer/xfer-network.c b/src/plugins/xfer/xfer-network.c index 3c7b63338..9eeabf904 100644 --- a/src/plugins/xfer/xfer-network.c +++ b/src/plugins/xfer/xfer-network.c @@ -484,7 +484,7 @@ xfer_network_child_kill (struct t_xfer *xfer) { kill (xfer->child_pid, SIGKILL); weechat_command (weechat_buffer_search_main (), - "/mute /wait 100ms /sys waitpid"); + "/mute /wait 100ms /sys waitpid 10"); xfer->child_pid = 0; } |