On Tue, 27 Aug 2019 at 12:15, Thomas Gummerer <[email protected]> wrote:
> struct lock_file lock = LOCK_INIT;
> const char *head_arg = "HEAD";
>
> - hold_locked_index(&lock, LOCK_DIE_ON_ERROR);
> - refresh_cache(REFRESH_QUIET);
> - if (write_locked_index(&the_index, &lock,
> - COMMIT_LOCK | SKIP_IF_UNCHANGED))
> - return error(_("Unable to write index."));
> + if (refresh_and_write_cache(REFRESH_QUIET, COMMIT_LOCK |
> SKIP_IF_UNCHANGED) < 0)
> + return -1;
I wondered why you didn't drop the `struct lock_file`, but it turns out
we still need it further down.
> if (!strcmp(strategy, "recursive") || !strcmp(strategy, "subtree")) {
> int clean, x;
What you could do, I guess, is to move its declaration to around here.
Probably not worth a re-roll.
> @@ -860,13 +857,9 @@ static int merge_trivial(struct commit *head, struct
> commit_list *remoteheads)
> {
> struct object_id result_tree, result_commit;
> struct commit_list *parents, **pptr = &parents;
> - struct lock_file lock = LOCK_INIT;
>
> - hold_locked_index(&lock, LOCK_DIE_ON_ERROR);
> - refresh_cache(REFRESH_QUIET);
> - if (write_locked_index(&the_index, &lock,
> - COMMIT_LOCK | SKIP_IF_UNCHANGED))
> - return error(_("Unable to write index."));
> + if (refresh_and_write_cache(REFRESH_QUIET, COMMIT_LOCK |
> SKIP_IF_UNCHANGED) < 0)
> + return -1;
Here you do drop the `struct lock_file` entirely, ok.
Martin