From b1541915ce65d8d4444db0a7331d2d1f2d330372 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 24 Jan 2026 01:04:13 +0000 Subject: [PATCH] Fix uninitialized target_len bug in chunk download response When responding to a full chunk download request (full == 1), the code was writing uninitialized target_len to the response message instead of the actual data length. This caused chunk-to-chunk downloads to fail, preventing proper replication and blocking coverage of download-related code paths. --- src/chunk_server.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/chunk_server.c b/src/chunk_server.c index 2ef1772..99a475c 100644 --- a/src/chunk_server.c +++ b/src/chunk_server.c @@ -711,7 +711,8 @@ process_client_download_chunk(ChunkServer *state, int conn_idx, ByteView msg) MessageWriter writer; message_writer_init(&writer, output, MESSAGE_TYPE_DOWNLOAD_CHUNK_SUCCESS); - message_write(&writer, &target_len, sizeof(target_len)); + uint32_t data_len = slice.len; + message_write(&writer, &data_len, sizeof(data_len)); message_write(&writer, slice.ptr, slice.len); if (!message_writer_free(&writer)) { free(data.ptr);