fixup: address PR review comments

- Merge io.h/c back into protocol.h/c
- Change send_data to take Data* argument
- Remove redundant file_load_data from send_chunk
- Move compression into file_send_single_calls
- Move file_receive from multiprocessing.c to file.c
This commit is contained in:
2026-07-16 11:54:20 +02:00
parent 02619cca5c
commit d36768792a
11 changed files with 87 additions and 100 deletions
+4 -12
View File
@@ -1,6 +1,5 @@
#include "client_send.h"
#include "chunk.h"
#include "compression.h"
#include "config.h"
#include "data.h"
#include "file.h"
@@ -24,11 +23,9 @@ int send_chunk(Client *client, Chunk *chunk, Config *config) {
if (config->use_compression) {
data = chunk_compress(chunk, config->compression_level, config->use_metadata);
} else {
for (int i = 0; i < chunk->element_count; i++)
file_load_data(chunk->items[i]);
data = chunk_serialize(chunk, config->use_metadata);
}
send_data(client->file_descriptor, data->data, data->size);
send_data(client->file_descriptor, data);
data_destroy(data);
} else if (config->use_sendfile && !config->use_compression) {
for (int i = 0; i < chunk->element_count; i++) {
@@ -38,14 +35,9 @@ int send_chunk(Client *client, Chunk *chunk, Config *config) {
} else {
for (int i = 0; i < chunk->element_count; i++) {
send_status(client->file_descriptor, STATUS_NEXT);
File *file = chunk->items[i];
if (config->use_compression) {
Data *compressed_data =
data_compress(file->data, config->compression_level);
data_destroy(file->data);
file->data = compressed_data;
}
file_send_single_calls(file, client->file_descriptor, config->use_metadata);
file_send_single_calls(chunk->items[i], client->file_descriptor,
config->use_metadata,
config->use_compression ? config->compression_level : 0);
}
}
return 0;