Junio C Hamano
4c9355ff48
repack: check error writing to pack-objects subprocess
...
When "git repack" repacks promisor objects, it starts a pack-objects
subprocess and uses xwrite() to send object names over the pipe to
it, but without any error checking. An I/O error or short write
(even though a short write is unlikely for such a small amount of
data) can result in a packfile that lacks certain objects we wanted
to put in there, leading to a silent repository corruption.
Use write_in_full(), instead of xwrite(), to mitigate short write
risks, check errors from it, and abort if we see a failure.
Signed-off-by: Junio C Hamano <gitster@pobox.com >
2024-03-02 11:12:16 -08:00
..
2024-01-08 14:05:15 -08:00
2023-12-26 12:04:31 -08:00
2023-12-26 12:04:31 -08:00
2023-12-26 12:04:33 -08:00
2024-02-08 16:22:10 -08:00
2024-02-08 16:22:10 -08:00
2024-01-11 17:15:54 -08:00
2023-10-29 08:56:17 +09:00
2023-08-07 11:57:18 -07:00
2024-02-14 15:36:06 -08:00
2023-08-11 09:44:52 -07:00
2023-06-21 13:39:53 -07:00
2023-06-21 13:39:54 -07:00
2023-06-21 13:39:53 -07:00
2023-07-05 11:42:31 -07:00
2023-12-26 12:04:31 -08:00
2024-02-13 14:12:51 -08:00
2023-12-09 07:41:03 +09:00
2024-02-08 16:22:10 -08:00
2024-02-13 10:18:50 -08:00
2024-02-08 13:20:34 -08:00
2023-12-26 12:04:31 -08:00
2024-02-08 16:22:10 -08:00
2024-01-29 10:27:53 -08:00
2023-07-13 17:24:00 -07:00
2023-07-05 11:42:31 -07:00
2023-12-26 12:04:31 -08:00
2023-07-06 11:54:46 -07:00
2023-03-28 14:11:24 -07:00
2023-12-26 12:04:31 -08:00
2023-04-11 08:52:10 -07:00
2023-12-26 12:04:31 -08:00
2023-12-26 12:04:31 -08:00
2023-12-26 12:04:31 -08:00
2023-12-26 12:04:31 -08:00
2023-12-26 12:04:31 -08:00
2024-02-12 09:32:41 -08:00
2023-12-26 11:06:23 -08:00
2023-07-05 11:42:31 -07:00
2024-02-08 16:22:10 -08:00
2023-07-05 11:41:59 -07:00
2024-01-08 14:05:15 -08:00
2023-06-21 13:39:53 -07:00
2024-02-21 09:58:06 -08:00
2023-12-26 12:04:33 -08:00
2024-01-18 12:17:42 -08:00
2023-12-26 12:04:31 -08:00
2024-02-14 15:36:06 -08:00
2023-12-26 12:04:31 -08:00
2023-07-06 11:54:48 -07:00
2023-12-26 12:04:31 -08:00
2024-03-02 11:12:16 -08:00
2024-01-16 10:11:57 -08:00
2023-10-13 14:18:27 -07:00
2024-02-08 16:22:10 -08:00
2023-12-26 12:04:31 -08:00
2024-01-08 14:05:15 -08:00
2023-12-26 12:04:31 -08:00
2023-12-26 12:04:31 -08:00
2023-06-21 13:39:53 -07:00
2023-12-26 12:04:31 -08:00
2023-11-22 14:23:06 +09:00
2023-06-21 13:39:53 -07:00
2023-06-21 13:39:53 -07:00
2023-12-26 12:04:31 -08:00
2024-02-08 16:22:10 -08:00
2024-02-26 18:10:24 -08:00
2023-12-26 12:04:33 -08:00
2023-07-05 11:42:31 -07:00
2023-07-06 11:54:48 -07:00
2023-12-26 12:04:31 -08:00
2023-09-05 14:58:44 -07:00
2024-02-14 15:36:06 -08:00
2024-02-08 16:22:10 -08:00
2023-06-21 13:39:54 -07:00
2023-05-12 14:54:14 -07:00
2023-07-06 11:54:48 -07:00
2023-03-21 10:56:51 -07:00
2023-06-29 16:43:21 -07:00
2023-12-26 12:04:31 -08:00
2024-02-08 16:22:10 -08:00
2023-12-26 12:04:31 -08:00
2023-12-26 12:04:31 -08:00
2024-03-01 14:38:56 -08:00
2024-02-12 09:22:20 -08:00
2024-03-01 14:38:55 -08:00
2023-03-28 14:11:24 -07:00
2023-03-28 14:11:24 -07:00
2023-08-04 10:52:31 -07:00
2024-03-02 11:12:16 -08:00
2023-07-13 17:24:00 -07:00
2023-11-26 10:10:50 +09:00
2023-12-26 12:04:31 -08:00
2024-02-13 14:12:51 -08:00
2023-12-26 12:04:33 -08:00
2024-01-02 09:24:48 -08:00
2023-12-26 12:04:31 -08:00
2023-12-26 12:04:31 -08:00
2024-02-08 16:22:10 -08:00
2023-06-21 13:39:53 -07:00
2023-07-27 15:26:37 -07:00
2023-06-21 13:39:53 -07:00
2024-02-08 16:22:10 -08:00
2024-02-08 16:22:10 -08:00
2024-02-12 13:16:11 -08:00
2023-07-06 11:54:46 -07:00
2023-12-26 12:04:31 -08:00
2023-07-05 11:41:18 -07:00
2024-02-27 16:04:32 -08:00
2023-07-05 11:41:59 -07:00
2024-03-02 11:12:16 -08:00
2023-10-02 11:20:00 -07:00
2023-12-26 12:04:31 -08:00
2023-06-21 13:39:53 -07:00
2023-06-21 13:39:53 -07:00
2023-06-29 16:43:21 -07:00
2024-01-18 12:17:41 -08:00
2023-12-26 12:04:31 -08:00
2023-06-21 13:39:54 -07:00
2023-12-26 12:04:31 -08:00
2024-02-08 16:22:10 -08:00
2023-06-21 13:39:53 -07:00