diff --git a/src/file_tree.c b/src/file_tree.c index 6bf36b3..1abfb7a 100644 --- a/src/file_tree.c +++ b/src/file_tree.c @@ -513,6 +513,9 @@ int file_tree_read(FileTree *ft, string path, uint64_t off, uint64_t len, uint64_t *gen, uint64_t *chunk_size, SHA256 *hashes, int max_hashes, uint64_t *actual_bytes) { + // Initialize gen to NO_GENERATION so error paths have a well-defined value + *gen = NO_GENERATION; + int num_comps; string comps[MAX_COMPS]; diff --git a/src/metadata_server.c b/src/metadata_server.c index 8e2d6b9..1354c78 100644 --- a/src/metadata_server.c +++ b/src/metadata_server.c @@ -432,7 +432,6 @@ process_client_read(MetadataServer *state, int conn_idx, ByteView msg) uint64_t actual_bytes; SHA256 hashes[MAX_READ_HASHES]; int ret = file_tree_read(&state->file_tree, path, offset, length, &gen, &chunk_size, hashes, MAX_READ_HASHES, &actual_bytes); - assert(gen != NO_GENERATION); if (ret < 0) {