mirror of
https://github.com/facebook/zstd.git
synced 2025-08-01 09:47:01 +03:00
Release resources in error paths via cleanup
Replace direct returns in error-handling branches with a unified cleanup block that frees allocated resources before returning, improving code quality and robustness.
This commit is contained in:
@ -159,15 +159,15 @@ static result_t compress_cctx_compress(
|
||||
return result_error(result_error_skip);
|
||||
|
||||
int const level = config_get_level(config);
|
||||
|
||||
result_t result;
|
||||
ZSTD_CCtx* cctx = ZSTD_createCCtx();
|
||||
ZSTD_DCtx* dctx = ZSTD_createDCtx();
|
||||
if (cctx == NULL || dctx == NULL) {
|
||||
fprintf(stderr, "context creation failed\n");
|
||||
return result_error(result_error_system_error);
|
||||
result = result_error(result_error_system_error);
|
||||
goto out;
|
||||
}
|
||||
|
||||
result_t result;
|
||||
result_data_t data = {.total_size = 0};
|
||||
for (size_t i = 0; i < state->inputs.size; ++i) {
|
||||
data_buffer_t const input = state->inputs.buffers[i];
|
||||
|
Reference in New Issue
Block a user