gguf-split : do not overwrite existing files when merging
This commit is contained in:
parent
3c7989fd29
commit
d3922ac9e8
1 changed files with 8 additions and 1 deletions
|
@ -389,10 +389,17 @@ static void gguf_merge(const split_params & split_params) {
|
||||||
int n_split = 1;
|
int n_split = 1;
|
||||||
int total_tensors = 0;
|
int total_tensors = 0;
|
||||||
|
|
||||||
auto * ctx_out = gguf_init_empty();
|
// avoid overwriting existing output file
|
||||||
|
if (std::ifstream(split_params.output.c_str())) {
|
||||||
|
fprintf(stderr, "%s: output file %s already exists\n", __func__, split_params.output.c_str());
|
||||||
|
exit(EXIT_FAILURE);
|
||||||
|
}
|
||||||
|
|
||||||
std::ofstream fout(split_params.output.c_str(), std::ios::binary);
|
std::ofstream fout(split_params.output.c_str(), std::ios::binary);
|
||||||
fout.exceptions(std::ofstream::failbit); // fail fast on write errors
|
fout.exceptions(std::ofstream::failbit); // fail fast on write errors
|
||||||
|
|
||||||
|
auto * ctx_out = gguf_init_empty();
|
||||||
|
|
||||||
std::vector<uint8_t> read_data;
|
std::vector<uint8_t> read_data;
|
||||||
std::vector<ggml_context *> ctx_metas;
|
std::vector<ggml_context *> ctx_metas;
|
||||||
std::vector<gguf_context *> ctx_ggufs;
|
std::vector<gguf_context *> ctx_ggufs;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue