diff --git a/README.md b/README.md index ec1d079..45b9514 100644 --- a/README.md +++ b/README.md @@ -339,6 +339,7 @@ features without changing the meaning of ordinary compatibility options. | `-m` | Enable the multithreaded scanner/loader/sender pipeline. | | `-c [level]`, `-z [level]` | Enable streaming zstd compression, levels 1-22. | | `--compress-level ` | Set the zstd compression level. | +| `--skip-compress ` | Skip compression for comma-separated suffixes; incompatible with `-s`. | | `--chunk-size ` | Set the transfer chunk size. | | `-s` | Enable FastSync chunk serialization. | | `-f`, `--sendfile` | Use TCP `sendfile()` zero-copy transfer. Incompatible with compression and chunk serialization. | diff --git a/src/shared/config.c b/src/shared/config.c index 1422ca8..5ac4bba 100644 --- a/src/shared/config.c +++ b/src/shared/config.c @@ -213,9 +213,11 @@ void config_delete(Config* config) { free(config->bind_address); free(config->daemon_config); free(config->compress_choice); - for (int i = 0; i < config->skip_compress_count; i++) - free(config->skip_compress_suffixes[i]); - free(config->skip_compress_suffixes); + if (config->skip_compress_suffixes) { + for (int i = 0; i < config->skip_compress_count; i++) + free(config->skip_compress_suffixes[i]); + free(config->skip_compress_suffixes); + } if (config->filters) { array_list_delete(config->filters); }