Replace the fixed-sized buffer file_fdpath with a dynamically allocated equivalent.

This commit is contained in:
Andrew Wood
2026-04-29 21:43:46 +01:00
parent c54c3258a6
commit 79a6420fea
11 changed files with 171 additions and 109 deletions
+13 -12
View File
@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Report-Msgid-Bugs-To: https://codeberg.org/ivarch/pv/issues\n"
"POT-Creation-Date: 2026-04-29 19:50+0100\n"
"POT-Creation-Date: 2026-04-29 21:37+0100\n"
"PO-Revision-Date: 2024-10-13 20:43+0000\n"
"Last-Translator: mmatous <mmatous@users.noreply.translate.codeberg.org>\n"
"Language-Team: Czech <https://translate.codeberg.org/projects/pv/pv/cs/>\n"
@@ -467,7 +467,7 @@ msgstr "yzafpnum kMGTPEZY"
msgid "yzafpnum KMGTPEZY"
msgstr "yzafpnum KMGTPEZY"
#: src/pv/display.c:1082 src/pv/state.c:900 src/pv/transfer.c:1154
#: src/pv/display.c:1082 src/pv/state.c:904 src/pv/transfer.c:1154
msgid "buffer allocation failed"
msgstr "selhala alokace vyrovnávací paměti"
@@ -540,17 +540,18 @@ msgstr "rychlost neměřena"
#: src/pv/loop.c:958 src/pv/loop.c:974 src/pv/loop.c:992 src/pv/remote.c:91
#: src/pv/remote.c:184 src/pv/remote.c:531 src/pv/remote.c:577
#: src/pv/watchpid.c:121 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:148 src/pv/watchpid.c:184 src/pv/watchpid.c:196
#: src/pv/watchpid.c:208 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:241 src/pv/watchpid.c:356 src/pv/watchpid.c:364
#: src/pv/watchpid.c:507 src/pv/watchpid.c:516 src/pv/watchpid.c:537
#: src/pv/watchpid.c:123 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:158 src/pv/watchpid.c:194
#: src/pv/watchpid.c:206 src/pv/watchpid.c:218 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:286 src/pv/watchpid.c:401
#: src/pv/watchpid.c:409 src/pv/watchpid.c:556 src/pv/watchpid.c:565
#: src/pv/watchpid.c:586
msgid "pid"
msgstr "pid"
#: src/pv/loop.c:992 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:150 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:243
#: src/pv/loop.c:992 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:160 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:288
msgid "fd"
msgstr "ds"
@@ -566,7 +567,7 @@ msgstr "SA_SIGINFO není na tomto systému podporováno"
msgid "history structure allocation failed"
msgstr "selhala alokace struktury historie"
#: src/pv/state.c:852 src/pv/state.c:864
#: src/pv/state.c:856 src/pv/state.c:868
msgid "file list allocation failed"
msgstr "selhala alokace seznamu souborů"
@@ -614,7 +615,7 @@ msgstr "zápis selhal"
msgid "select call failed"
msgstr "selhalo volání select"
#: src/pv/watchpid.c:150 src/pv/watchpid.c:243
#: src/pv/watchpid.c:160 src/pv/watchpid.c:288
msgid "not a regular file or block device"
msgstr "není obyčejný soubor nebo blokové zařízení"
+13 -12
View File
@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Report-Msgid-Bugs-To: https://codeberg.org/ivarch/pv/issues\n"
"POT-Creation-Date: 2026-04-29 19:50+0100\n"
"POT-Creation-Date: 2026-04-29 21:37+0100\n"
"PO-Revision-Date: 2025-01-14 20:39+0000\n"
"Last-Translator: Benny <benny@users.noreply.translate.codeberg.org>\n"
"Language-Team: German <https://translate.codeberg.org/projects/pv/pv/de/>\n"
@@ -490,7 +490,7 @@ msgstr "yzafpnµm kMGTPEZY"
msgid "yzafpnum KMGTPEZY"
msgstr "yzafpnµm KMGTPEZY"
#: src/pv/display.c:1082 src/pv/state.c:900 src/pv/transfer.c:1154
#: src/pv/display.c:1082 src/pv/state.c:904 src/pv/transfer.c:1154
msgid "buffer allocation failed"
msgstr "Speicherzuweisung für den Puffer fehlgeschlagen"
@@ -563,17 +563,18 @@ msgstr "Übertragungsrate nicht gemessen"
#: src/pv/loop.c:958 src/pv/loop.c:974 src/pv/loop.c:992 src/pv/remote.c:91
#: src/pv/remote.c:184 src/pv/remote.c:531 src/pv/remote.c:577
#: src/pv/watchpid.c:121 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:148 src/pv/watchpid.c:184 src/pv/watchpid.c:196
#: src/pv/watchpid.c:208 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:241 src/pv/watchpid.c:356 src/pv/watchpid.c:364
#: src/pv/watchpid.c:507 src/pv/watchpid.c:516 src/pv/watchpid.c:537
#: src/pv/watchpid.c:123 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:158 src/pv/watchpid.c:194
#: src/pv/watchpid.c:206 src/pv/watchpid.c:218 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:286 src/pv/watchpid.c:401
#: src/pv/watchpid.c:409 src/pv/watchpid.c:556 src/pv/watchpid.c:565
#: src/pv/watchpid.c:586
msgid "pid"
msgstr "pid"
#: src/pv/loop.c:992 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:150 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:243
#: src/pv/loop.c:992 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:160 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:288
msgid "fd"
msgstr "fd"
@@ -589,7 +590,7 @@ msgstr "SA_SIGINFO wird auf diesem System nicht unterstützt"
msgid "history structure allocation failed"
msgstr "Speicherzuweisung für `history' fehlgeschlagen"
#: src/pv/state.c:852 src/pv/state.c:864
#: src/pv/state.c:856 src/pv/state.c:868
msgid "file list allocation failed"
msgstr "Speicherzuweisung für die Dateiliste fehlgeschlagen"
@@ -637,7 +638,7 @@ msgstr "write-Aufruf fehlgeschlagen"
msgid "select call failed"
msgstr "select-Aufruf fehlgeschlagen"
#: src/pv/watchpid.c:150 src/pv/watchpid.c:243
#: src/pv/watchpid.c:160 src/pv/watchpid.c:288
msgid "not a regular file or block device"
msgstr "ist weder eine normale Datei noch ein Blockgerät"
+13 -12
View File
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pv 1.9.34\n"
"Report-Msgid-Bugs-To: https://codeberg.org/ivarch/pv/issues\n"
"POT-Creation-Date: 2026-04-29 19:50+0100\n"
"POT-Creation-Date: 2026-04-29 21:37+0100\n"
"PO-Revision-Date: 2026-03-24 23:25+0000\n"
"Last-Translator: Ricky-Tigg <ricky-tigg@noreply.codeberg.org>\n"
"Language-Team: Finnish <https://translate.codeberg.org/projects/pv/pv/fi/>\n"
@@ -472,7 +472,7 @@ msgstr ""
msgid "yzafpnum KMGTPEZY"
msgstr ""
#: src/pv/display.c:1082 src/pv/state.c:900 src/pv/transfer.c:1154
#: src/pv/display.c:1082 src/pv/state.c:904 src/pv/transfer.c:1154
msgid "buffer allocation failed"
msgstr "puskurin allokointi epäonnistui"
@@ -545,17 +545,18 @@ msgstr "nopeutta ei mitattu"
#: src/pv/loop.c:958 src/pv/loop.c:974 src/pv/loop.c:992 src/pv/remote.c:91
#: src/pv/remote.c:184 src/pv/remote.c:531 src/pv/remote.c:577
#: src/pv/watchpid.c:121 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:148 src/pv/watchpid.c:184 src/pv/watchpid.c:196
#: src/pv/watchpid.c:208 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:241 src/pv/watchpid.c:356 src/pv/watchpid.c:364
#: src/pv/watchpid.c:507 src/pv/watchpid.c:516 src/pv/watchpid.c:537
#: src/pv/watchpid.c:123 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:158 src/pv/watchpid.c:194
#: src/pv/watchpid.c:206 src/pv/watchpid.c:218 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:286 src/pv/watchpid.c:401
#: src/pv/watchpid.c:409 src/pv/watchpid.c:556 src/pv/watchpid.c:565
#: src/pv/watchpid.c:586
msgid "pid"
msgstr ""
#: src/pv/loop.c:992 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:150 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:243
#: src/pv/loop.c:992 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:160 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:288
msgid "fd"
msgstr ""
@@ -571,7 +572,7 @@ msgstr "SA_SIGINFO ei ole tuettu tässä järjestelmässä"
msgid "history structure allocation failed"
msgstr "historiarakenteen allokointi epäonnistui"
#: src/pv/state.c:852 src/pv/state.c:864
#: src/pv/state.c:856 src/pv/state.c:868
msgid "file list allocation failed"
msgstr "tiedostolistan allokointi epäonnistui"
@@ -619,6 +620,6 @@ msgstr "kirjoittaminen epäonnistui"
msgid "select call failed"
msgstr "valintakutsu epäonnistui"
#: src/pv/watchpid.c:150 src/pv/watchpid.c:243
#: src/pv/watchpid.c:160 src/pv/watchpid.c:288
msgid "not a regular file or block device"
msgstr "ei tavallinen tiedosto tai lohkolaite"
+13 -12
View File
@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Report-Msgid-Bugs-To: https://codeberg.org/ivarch/pv/issues\n"
"POT-Creation-Date: 2026-04-29 19:50+0100\n"
"POT-Creation-Date: 2026-04-29 21:37+0100\n"
"PO-Revision-Date: 2025-05-31 08:58+0000\n"
"Last-Translator: milimarg <milimarg@noreply.codeberg.org>\n"
"Language-Team: French <https://translate.codeberg.org/projects/pv/pv/fr/>\n"
@@ -494,7 +494,7 @@ msgstr "yzafpnum kMGTPEZY"
msgid "yzafpnum KMGTPEZY"
msgstr "yzafpnum KMGTPEZY"
#: src/pv/display.c:1082 src/pv/state.c:900 src/pv/transfer.c:1154
#: src/pv/display.c:1082 src/pv/state.c:904 src/pv/transfer.c:1154
msgid "buffer allocation failed"
msgstr "échec de l'allocation de mémoire tampon"
@@ -567,17 +567,18 @@ msgstr "taux non mesuré"
#: src/pv/loop.c:958 src/pv/loop.c:974 src/pv/loop.c:992 src/pv/remote.c:91
#: src/pv/remote.c:184 src/pv/remote.c:531 src/pv/remote.c:577
#: src/pv/watchpid.c:121 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:148 src/pv/watchpid.c:184 src/pv/watchpid.c:196
#: src/pv/watchpid.c:208 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:241 src/pv/watchpid.c:356 src/pv/watchpid.c:364
#: src/pv/watchpid.c:507 src/pv/watchpid.c:516 src/pv/watchpid.c:537
#: src/pv/watchpid.c:123 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:158 src/pv/watchpid.c:194
#: src/pv/watchpid.c:206 src/pv/watchpid.c:218 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:286 src/pv/watchpid.c:401
#: src/pv/watchpid.c:409 src/pv/watchpid.c:556 src/pv/watchpid.c:565
#: src/pv/watchpid.c:586
msgid "pid"
msgstr "pid"
#: src/pv/loop.c:992 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:150 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:243
#: src/pv/loop.c:992 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:160 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:288
msgid "fd"
msgstr "fd"
@@ -593,7 +594,7 @@ msgstr "SA_SIGINFO non pris en charge sur ce système"
msgid "history structure allocation failed"
msgstr "l'allocation de la structure de l'historique a échoué"
#: src/pv/state.c:852 src/pv/state.c:864
#: src/pv/state.c:856 src/pv/state.c:868
msgid "file list allocation failed"
msgstr "échec de l'allocation de la liste de fichiers"
@@ -641,7 +642,7 @@ msgstr "l'écriture a échoué"
msgid "select call failed"
msgstr "l'appel de sélection a échoué"
#: src/pv/watchpid.c:150 src/pv/watchpid.c:243
#: src/pv/watchpid.c:160 src/pv/watchpid.c:288
msgid "not a regular file or block device"
msgstr "pas un fichier ordinaire ou un périphérique de bloc"
+13 -12
View File
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://codeberg.org/ivarch/pv/issues\n"
"POT-Creation-Date: 2026-04-29 19:50+0100\n"
"POT-Creation-Date: 2026-04-29 21:37+0100\n"
"PO-Revision-Date: 2026-04-06 15:34+0000\n"
"Last-Translator: Coral Pink <coral.pink@disr.it>\n"
"Language-Team: Polish <https://translate.codeberg.org/projects/pv/pv/pl/>\n"
@@ -487,7 +487,7 @@ msgstr "yzafpnum kMGTPEZY"
msgid "yzafpnum KMGTPEZY"
msgstr "yzafpnum KMGTPEZY"
#: src/pv/display.c:1082 src/pv/state.c:900 src/pv/transfer.c:1154
#: src/pv/display.c:1082 src/pv/state.c:904 src/pv/transfer.c:1154
msgid "buffer allocation failed"
msgstr "nie udało się zaalokować bufora"
@@ -561,17 +561,18 @@ msgstr "prędkość niezmierzona"
#: src/pv/loop.c:958 src/pv/loop.c:974 src/pv/loop.c:992 src/pv/remote.c:91
#: src/pv/remote.c:184 src/pv/remote.c:531 src/pv/remote.c:577
#: src/pv/watchpid.c:121 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:148 src/pv/watchpid.c:184 src/pv/watchpid.c:196
#: src/pv/watchpid.c:208 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:241 src/pv/watchpid.c:356 src/pv/watchpid.c:364
#: src/pv/watchpid.c:507 src/pv/watchpid.c:516 src/pv/watchpid.c:537
#: src/pv/watchpid.c:123 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:158 src/pv/watchpid.c:194
#: src/pv/watchpid.c:206 src/pv/watchpid.c:218 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:286 src/pv/watchpid.c:401
#: src/pv/watchpid.c:409 src/pv/watchpid.c:556 src/pv/watchpid.c:565
#: src/pv/watchpid.c:586
msgid "pid"
msgstr "pid"
#: src/pv/loop.c:992 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:150 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:243
#: src/pv/loop.c:992 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:160 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:288
msgid "fd"
msgstr "fd"
@@ -587,7 +588,7 @@ msgstr "SA_SIGINFO nie jest wspierane na tym systemie"
msgid "history structure allocation failed"
msgstr "nie udało się zaalokować struktury historii"
#: src/pv/state.c:852 src/pv/state.c:864
#: src/pv/state.c:856 src/pv/state.c:868
msgid "file list allocation failed"
msgstr "nie udało się zaalokować listy plików"
@@ -636,7 +637,7 @@ msgstr "błąd zapisu"
msgid "select call failed"
msgstr "nie udało się wywołać funkcji select"
#: src/pv/watchpid.c:150 src/pv/watchpid.c:243
#: src/pv/watchpid.c:160 src/pv/watchpid.c:288
msgid "not a regular file or block device"
msgstr "plik nie jest plikiem regularnym lub urządzeniem blokowym"
+13 -12
View File
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://codeberg.org/ivarch/pv/issues\n"
"POT-Creation-Date: 2026-04-29 19:50+0100\n"
"POT-Creation-Date: 2026-04-29 21:37+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -473,7 +473,7 @@ msgstr ""
msgid "yzafpnum KMGTPEZY"
msgstr ""
#: src/pv/display.c:1082 src/pv/state.c:900 src/pv/transfer.c:1154
#: src/pv/display.c:1082 src/pv/state.c:904 src/pv/transfer.c:1154
msgid "buffer allocation failed"
msgstr "erro alocando o buffer"
@@ -546,17 +546,18 @@ msgstr ""
#: src/pv/loop.c:958 src/pv/loop.c:974 src/pv/loop.c:992 src/pv/remote.c:91
#: src/pv/remote.c:184 src/pv/remote.c:531 src/pv/remote.c:577
#: src/pv/watchpid.c:121 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:148 src/pv/watchpid.c:184 src/pv/watchpid.c:196
#: src/pv/watchpid.c:208 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:241 src/pv/watchpid.c:356 src/pv/watchpid.c:364
#: src/pv/watchpid.c:507 src/pv/watchpid.c:516 src/pv/watchpid.c:537
#: src/pv/watchpid.c:123 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:158 src/pv/watchpid.c:194
#: src/pv/watchpid.c:206 src/pv/watchpid.c:218 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:286 src/pv/watchpid.c:401
#: src/pv/watchpid.c:409 src/pv/watchpid.c:556 src/pv/watchpid.c:565
#: src/pv/watchpid.c:586
msgid "pid"
msgstr ""
#: src/pv/loop.c:992 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:150 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:243
#: src/pv/loop.c:992 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:160 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:288
msgid "fd"
msgstr ""
@@ -572,7 +573,7 @@ msgstr "SA_SIGINFO não suportado neste sistema"
msgid "history structure allocation failed"
msgstr ""
#: src/pv/state.c:852 src/pv/state.c:864
#: src/pv/state.c:856 src/pv/state.c:868
msgid "file list allocation failed"
msgstr ""
@@ -620,6 +621,6 @@ msgstr "erro de gravação"
msgid "select call failed"
msgstr "erro na chamada da função select"
#: src/pv/watchpid.c:150 src/pv/watchpid.c:243
#: src/pv/watchpid.c:160 src/pv/watchpid.c:288
msgid "not a regular file or block device"
msgstr "não é um arquivo regular ou dispositivo de bloqueio"
+13 -12
View File
@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Report-Msgid-Bugs-To: https://codeberg.org/ivarch/pv/issues\n"
"POT-Creation-Date: 2026-04-29 19:50+0100\n"
"POT-Creation-Date: 2026-04-29 21:37+0100\n"
"PO-Revision-Date: 2025-01-15 19:08+0000\n"
"Last-Translator: 0ko <0ko@users.noreply.translate.codeberg.org>\n"
"Language-Team: Russian <https://translate.codeberg.org/projects/pv/pv/ru/>\n"
@@ -468,7 +468,7 @@ msgstr ""
msgid "yzafpnum KMGTPEZY"
msgstr ""
#: src/pv/display.c:1082 src/pv/state.c:900 src/pv/transfer.c:1154
#: src/pv/display.c:1082 src/pv/state.c:904 src/pv/transfer.c:1154
msgid "buffer allocation failed"
msgstr "не удалось выделить память для буфера"
@@ -541,17 +541,18 @@ msgstr "скорость не изменяется"
#: src/pv/loop.c:958 src/pv/loop.c:974 src/pv/loop.c:992 src/pv/remote.c:91
#: src/pv/remote.c:184 src/pv/remote.c:531 src/pv/remote.c:577
#: src/pv/watchpid.c:121 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:148 src/pv/watchpid.c:184 src/pv/watchpid.c:196
#: src/pv/watchpid.c:208 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:241 src/pv/watchpid.c:356 src/pv/watchpid.c:364
#: src/pv/watchpid.c:507 src/pv/watchpid.c:516 src/pv/watchpid.c:537
#: src/pv/watchpid.c:123 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:158 src/pv/watchpid.c:194
#: src/pv/watchpid.c:206 src/pv/watchpid.c:218 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:286 src/pv/watchpid.c:401
#: src/pv/watchpid.c:409 src/pv/watchpid.c:556 src/pv/watchpid.c:565
#: src/pv/watchpid.c:586
msgid "pid"
msgstr "ИДпр"
#: src/pv/loop.c:992 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:150 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:243
#: src/pv/loop.c:992 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:160 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:288
msgid "fd"
msgstr "дф"
@@ -567,7 +568,7 @@ msgstr "Этой системой не поддерживается SA_SIGINFO"
msgid "history structure allocation failed"
msgstr "не удалось выделить память для структуры истории"
#: src/pv/state.c:852 src/pv/state.c:864
#: src/pv/state.c:856 src/pv/state.c:868
msgid "file list allocation failed"
msgstr "не удалось выделить память для списка файлов"
@@ -615,7 +616,7 @@ msgstr "запись не удалась"
msgid "select call failed"
msgstr "запрос выборки не удался"
#: src/pv/watchpid.c:150 src/pv/watchpid.c:243
#: src/pv/watchpid.c:160 src/pv/watchpid.c:288
msgid "not a regular file or block device"
msgstr "не является обычным файлом или блочным устройством"
+13 -12
View File
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pv 1.8.14\n"
"Report-Msgid-Bugs-To: https://codeberg.org/ivarch/pv/issues\n"
"POT-Creation-Date: 2026-04-29 19:50+0100\n"
"POT-Creation-Date: 2026-04-29 21:37+0100\n"
"PO-Revision-Date: 2025-10-05 20:09+0000\n"
"Last-Translator: Oğuz Ersen <ersen@noreply.codeberg.org>\n"
"Language-Team: Turkish <https://translate.codeberg.org/projects/pv/pv/tr/>\n"
@@ -469,7 +469,7 @@ msgstr "yzafpnum kMGTPEZY"
msgid "yzafpnum KMGTPEZY"
msgstr "yzafpnum KMGTPEZY"
#: src/pv/display.c:1082 src/pv/state.c:900 src/pv/transfer.c:1154
#: src/pv/display.c:1082 src/pv/state.c:904 src/pv/transfer.c:1154
msgid "buffer allocation failed"
msgstr "arabellek tahsisi başarısız oldu"
@@ -542,17 +542,18 @@ msgstr "oran ölçülmedi"
#: src/pv/loop.c:958 src/pv/loop.c:974 src/pv/loop.c:992 src/pv/remote.c:91
#: src/pv/remote.c:184 src/pv/remote.c:531 src/pv/remote.c:577
#: src/pv/watchpid.c:121 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:148 src/pv/watchpid.c:184 src/pv/watchpid.c:196
#: src/pv/watchpid.c:208 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:241 src/pv/watchpid.c:356 src/pv/watchpid.c:364
#: src/pv/watchpid.c:507 src/pv/watchpid.c:516 src/pv/watchpid.c:537
#: src/pv/watchpid.c:123 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:158 src/pv/watchpid.c:194
#: src/pv/watchpid.c:206 src/pv/watchpid.c:218 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:286 src/pv/watchpid.c:401
#: src/pv/watchpid.c:409 src/pv/watchpid.c:556 src/pv/watchpid.c:565
#: src/pv/watchpid.c:586
msgid "pid"
msgstr "pid"
#: src/pv/loop.c:992 src/pv/watchpid.c:130 src/pv/watchpid.c:141
#: src/pv/watchpid.c:150 src/pv/watchpid.c:223 src/pv/watchpid.c:232
#: src/pv/watchpid.c:243
#: src/pv/loop.c:992 src/pv/watchpid.c:132 src/pv/watchpid.c:142
#: src/pv/watchpid.c:151 src/pv/watchpid.c:160 src/pv/watchpid.c:268
#: src/pv/watchpid.c:277 src/pv/watchpid.c:288
msgid "fd"
msgstr "fd"
@@ -568,7 +569,7 @@ msgstr "SA_SIGINFO bu sistemde desteklenmiyor"
msgid "history structure allocation failed"
msgstr "geçmiş yapısı tahsisi başarısız oldu"
#: src/pv/state.c:852 src/pv/state.c:864
#: src/pv/state.c:856 src/pv/state.c:868
msgid "file list allocation failed"
msgstr "dosya listesi tahsisi başarısız oldu"
@@ -616,7 +617,7 @@ msgstr "yazma başarısız"
msgid "select call failed"
msgstr "seçme çağrısı başarısız oldu"
#: src/pv/watchpid.c:150 src/pv/watchpid.c:243
#: src/pv/watchpid.c:160 src/pv/watchpid.c:288
msgid "not a regular file or block device"
msgstr "normal bir dosya veya blok aygıtı değil"
+1 -2
View File
@@ -48,7 +48,6 @@ extern "C" {
#define PV_SIZEOF_PREVLINE_BUFFER 1024
#define PV_FORMAT_ARRAY_MAX 100
#define PV_SIZEOF_FORMAT_SEGMENTS_BUF 4096
#define PV_SIZEOF_FILE_FDPATH 4096
#define PV_SIZEOF_DISPLAY_NAME 512
#define PV_BARSTYLE_MAX 4 /* number of different styles allowed in a format */
@@ -498,7 +497,7 @@ struct pvwatchfd_s {
nullable_string_ptr file_fdinfo; /* path to /proc fdinfo file */
nullable_string_ptr file_fdsymlink; /* path to /proc fd symlink */
#endif
char file_fdpath[PV_SIZEOF_FILE_FDPATH]; /* path to file that was opened */
nullable_string_ptr file_fdpath; /* path to file that was opened */
/*@keep@ */ char display_name[PV_SIZEOF_DISPLAY_NAME]; /* name to show on progress bar */
struct stat sb_fd; /* stat of fd symlink */
struct stat sb_fd_link; /* lstat of fd symlink */
+5 -1
View File
@@ -221,7 +221,11 @@ pvstate_t pv_state_alloc(void)
for (try_size = 32; try_size <= 16384; try_size = try_size * 2) {
bool buffer_too_small;
/*@-mustfreeonly@ *//* splint mis-detects a memory leak here */
if (NULL != state->status.cwd) {
free(state->status.cwd);
state->status.cwd = NULL;
}
/*@-mustfreeonly@ *//* splint mis-detects this as a memory leak. */
state->status.cwd = malloc(try_size);
/*@+mustfreeonly@ */
if (NULL == state->status.cwd)
+61 -10
View File
@@ -44,6 +44,8 @@ static bool filesize(pvwatchfd_t info)
{
if (NULL == info)
return false;
if (NULL == info->file_fdpath)
return false;
if (S_ISBLK(info->sb_fd.st_mode)) {
int fd;
@@ -131,7 +133,15 @@ int pv_watchfd_info(pvstate_t state, pvwatchfd_t info, bool automatic)
return 3;
}
strlcpy(info->file_fdpath, vnodeInfo.pvip.vip_path, PV_SIZEOF_FILE_FDPATH);
if (NULL != info->file_fdpath) {
free(info->file_fdpath);
info->file_fdpath = NULL;
}
info->file_fdpath = pv_strdup(vnodeInfo.pvip.vip_path);
if (NULL == info->file_fdpath) {
pv_perror("%s %u: %s %d", _("pid"), info->watch_pid, _("fd"), info->watch_fd);
return 3;
}
info->size = 0;
@@ -210,15 +220,50 @@ int pv_watchfd_info(pvstate_t state, pvwatchfd_t info, bool automatic)
}
/* Get a string containing the path that the /proc fd symlink points to. */
memset(info->file_fdpath, 0, PV_SIZEOF_FILE_FDPATH);
if (readlink(info->file_fdsymlink, info->file_fdpath, PV_SIZEOF_FILE_FDPATH - 1) < 0) { /* flawfinder: ignore */
/*
* flawfinder: memset() has put \0 at the end already, and
* readlink() is given 1 byte less than the buffer length,
* so \0 termination is assured. See filesize() above for
* the mitigation of the risk that the link could change
* while it is being read.
*/
if (NULL != info->file_fdpath) {
free(info->file_fdpath);
info->file_fdpath = NULL;
}
/* Try buffers of different sizes - see readlink(2). */
{
size_t try_size;
for (try_size = 16; try_size <= 16384; try_size = try_size * 2) {
ssize_t bytes_stored;
if (NULL != info->file_fdpath) {
free(info->file_fdpath);
info->file_fdpath = NULL;
}
/*@-mustfreeonly@ *//* splint mis-detects this as a memory leak. */
info->file_fdpath = calloc(1, try_size);
/*@+mustfreeonly@ */
if (NULL == info->file_fdpath)
break;
bytes_stored = readlink(info->file_fdsymlink, info->file_fdpath, try_size - 1); /* flawfinder: ignore */
/*
* flawfinder: the risk is minimal, as no reads are
* performed.
*/
if (bytes_stored < 0) {
int old_errno;
old_errno = errno;
free(info->file_fdpath);
info->file_fdpath = NULL;
errno = old_errno;
break;
} else if (bytes_stored < (ssize_t) (try_size - 1)) {
info->file_fdpath[bytes_stored] = '\0';
break;
} else {
free(info->file_fdpath);
info->file_fdpath = NULL;
errno = ENAMETOOLONG;
}
}
}
if (NULL == info->file_fdpath) {
if (!automatic)
pv_perror("%s %u: %s %d", _("pid"), info->watch_pid, _("fd"), info->watch_fd);
return 2;
@@ -459,6 +504,10 @@ void pv_freecontents_watchfd(pvwatchfd_t info)
info->file_fdsymlink = NULL;
}
#endif
if (NULL != info->file_fdpath) {
free(info->file_fdpath);
info->file_fdpath = NULL;
}
}
@@ -725,6 +774,8 @@ void pv_watchpid_setname(pvstate_t state, pvwatchfd_t info)
file_fdpath = info->file_fdpath;
memset(info->display_name, 0, PV_SIZEOF_DISPLAY_NAME);
if (NULL == file_fdpath)
return;
path_length = strlen(info->file_fdpath); /* flawfinder: ignore */
cwd_length = 0;