]> git.ipfire.org Git - thirdparty/git.git/commitdiff
read-cache: try not to peek into `struct {lock_,temp}file`
authorMartin Ågren <martin.agren@gmail.com>
Tue, 5 Jan 2021 19:23:50 +0000 (20:23 +0100)
committerJunio C Hamano <gitster@pobox.com>
Wed, 6 Jan 2021 21:53:32 +0000 (13:53 -0800)
Similar to the previous commits, try to avoid peeking into the `struct
lock_file`. We also have some `struct tempfile`s -- let's avoid looking
into those as well.

Note that `do_write_index()` takes a tempfile and that when we call it,
we either have a tempfile which we can easily hand down, or we have a
lock file, from which we need to somehow obtain the internal tempfile.
So we need to leave that one instance of peeking-into. Nevertheless,
this commit leaves us not relying on exactly how the path of the
tempfile / lock file is stored internally.

Signed-off-by: Martin Ågren <martin.agren@gmail.com>
Reviewed-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
read-cache.c

index ecf6f689940556977974a48fe44b2b20f31b9bf5..29144cf879e795c3f5415cd5dd50f53a5dfb0cac 100644 (file)
@@ -3014,10 +3014,10 @@ static int do_write_index(struct index_state *istate, struct tempfile *tempfile,
        if (ce_flush(&c, newfd, istate->oid.hash))
                return -1;
        if (close_tempfile_gently(tempfile)) {
-               error(_("could not close '%s'"), tempfile->filename.buf);
+               error(_("could not close '%s'"), get_tempfile_path(tempfile));
                return -1;
        }
-       if (stat(tempfile->filename.buf, &st))
+       if (stat(get_tempfile_path(tempfile), &st))
                return -1;
        istate->timestamp.sec = (unsigned int)st.st_mtime;
        istate->timestamp.nsec = ST_MTIME_NSEC(st);
@@ -3058,10 +3058,10 @@ static int do_write_locked_index(struct index_state *istate, struct lock_file *l
         * that is associated with the given "istate".
         */
        trace2_region_enter_printf("index", "do_write_index", the_repository,
-                                  "%s", lock->tempfile->filename.buf);
+                                  "%s", get_lock_file_path(lock));
        ret = do_write_index(istate, lock->tempfile, 0);
        trace2_region_leave_printf("index", "do_write_index", the_repository,
-                                  "%s", lock->tempfile->filename.buf);
+                                  "%s", get_lock_file_path(lock));
 
        if (ret)
                return ret;
@@ -3158,10 +3158,10 @@ static int write_shared_index(struct index_state *istate,
        move_cache_to_base_index(istate);
 
        trace2_region_enter_printf("index", "shared/do_write_index",
-                                  the_repository, "%s", (*temp)->filename.buf);
+                                  the_repository, "%s", get_tempfile_path(*temp));
        ret = do_write_index(si->base, *temp, 1);
        trace2_region_leave_printf("index", "shared/do_write_index",
-                                  the_repository, "%s", (*temp)->filename.buf);
+                                  the_repository, "%s", get_tempfile_path(*temp));
 
        if (ret)
                return ret;