mirror of
https://git.proxmox.com/git/libgit2
synced 2025-06-23 05:38:41 +00:00
Some coverity inspired cleanups
This commit is contained in:
parent
03fcef1889
commit
a37aa82ea6
12
src/config.c
12
src/config.c
@ -153,19 +153,19 @@ int git_config_snapshot(git_config **out, git_config *in)
|
||||
git_config_backend *b;
|
||||
|
||||
if ((error = internal->file->snapshot(&b, internal->file)) < 0)
|
||||
goto on_error;
|
||||
break;
|
||||
|
||||
if ((error = git_config_add_backend(config, b, internal->level, 0)) < 0) {
|
||||
b->free(b);
|
||||
goto on_error;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
*out = config;
|
||||
return error;
|
||||
|
||||
on_error:
|
||||
if (error < 0)
|
||||
git_config_free(config);
|
||||
else
|
||||
*out = config;
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
|
@ -313,6 +313,7 @@ static int config__refresh(git_config_backend *cfg)
|
||||
goto out;
|
||||
|
||||
reader = git_array_get(b->readers, git_array_size(b->readers) - 1);
|
||||
GITERR_CHECK_ALLOC(reader);
|
||||
|
||||
if ((error = config_parse(values->values, b, reader, b->level, 0)) < 0)
|
||||
goto out;
|
||||
@ -327,6 +328,7 @@ static int config__refresh(git_config_backend *cfg)
|
||||
|
||||
out:
|
||||
refcounted_strmap_free(values);
|
||||
if (reader)
|
||||
git_buf_free(&reader->buffer);
|
||||
return error;
|
||||
}
|
||||
@ -344,8 +346,8 @@ static int config_refresh(git_config_backend *cfg)
|
||||
&reader->buffer, reader->file_path,
|
||||
&reader->file_mtime, &reader->file_size, &updated);
|
||||
|
||||
if (error < 0)
|
||||
return (error == GIT_ENOTFOUND) ? 0 : error;
|
||||
if (error < 0 && error != GIT_ENOTFOUND)
|
||||
return error;
|
||||
|
||||
if (updated)
|
||||
any_updated = 1;
|
||||
|
@ -233,17 +233,17 @@ static int git_diff_driver_load(
|
||||
return 0;
|
||||
}
|
||||
|
||||
drv = git__calloc(1, sizeof(git_diff_driver) + namelen + 1);
|
||||
GITERR_CHECK_ALLOC(drv);
|
||||
drv->type = DIFF_DRIVER_AUTO;
|
||||
memcpy(drv->name, driver_name, namelen);
|
||||
|
||||
/* if you can't read config for repo, just use default driver */
|
||||
if (git_repository_config_snapshot(&cfg, repo) < 0) {
|
||||
giterr_clear();
|
||||
goto done;
|
||||
}
|
||||
|
||||
drv = git__calloc(1, sizeof(git_diff_driver) + namelen + 1);
|
||||
GITERR_CHECK_ALLOC(drv);
|
||||
drv->type = DIFF_DRIVER_AUTO;
|
||||
memcpy(drv->name, driver_name, namelen);
|
||||
|
||||
if ((error = git_buf_printf(&name, "diff.%s.binary", driver_name)) < 0)
|
||||
goto done;
|
||||
|
||||
|
14
src/tag.c
14
src/tag.c
@ -363,20 +363,22 @@ int git_tag_create_frombuffer(git_oid *oid, git_repository *repo, const char *bu
|
||||
}
|
||||
|
||||
/* write the buffer */
|
||||
if (git_odb_open_wstream(&stream, odb, strlen(buffer), GIT_OBJ_TAG) < 0)
|
||||
return -1;
|
||||
|
||||
git_odb_stream_write(stream, buffer, strlen(buffer));
|
||||
if ((error = git_odb_open_wstream(
|
||||
&stream, odb, strlen(buffer), GIT_OBJ_TAG)) < 0)
|
||||
return error;
|
||||
|
||||
if (!(error = git_odb_stream_write(stream, buffer, strlen(buffer))))
|
||||
error = git_odb_stream_finalize_write(oid, stream);
|
||||
|
||||
git_odb_stream_free(stream);
|
||||
|
||||
if (error < 0) {
|
||||
git_buf_free(&ref_name);
|
||||
return -1;
|
||||
return error;
|
||||
}
|
||||
|
||||
error = git_reference_create(&new_ref, repo, ref_name.ptr, oid, allow_ref_overwrite, NULL, NULL);
|
||||
error = git_reference_create(
|
||||
&new_ref, repo, ref_name.ptr, oid, allow_ref_overwrite, NULL, NULL);
|
||||
|
||||
git_reference_free(new_ref);
|
||||
git_buf_free(&ref_name);
|
||||
|
Loading…
Reference in New Issue
Block a user