]> git.ipfire.org Git - thirdparty/git.git/commitdiff
entry: make fstat_output() and read_blob_entry() public
authorMatheus Tavares <matheus.bernardino@usp.br>
Tue, 23 Mar 2021 14:19:33 +0000 (11:19 -0300)
committerJunio C Hamano <gitster@pobox.com>
Tue, 23 Mar 2021 17:34:05 +0000 (10:34 -0700)
These two functions will be used by the parallel checkout code, so let's
make them public. Note: fstat_output() is renamed to
fstat_checkout_output(), now that it has become public, seeking to avoid
future name collisions.

Signed-off-by: Matheus Tavares <matheus.bernardino@usp.br>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
entry.c
entry.h

diff --git a/entry.c b/entry.c
index c3e511bfb34d29ca6d3e782b760ea87547d8bf38..1e2d9f7baa45dbb9faec28052a93e1d355a11463 100644 (file)
--- a/entry.c
+++ b/entry.c
@@ -84,7 +84,7 @@ static int create_file(const char *path, unsigned int mode)
        return open(path, O_WRONLY | O_CREAT | O_EXCL, mode);
 }
 
-static void *read_blob_entry(const struct cache_entry *ce, unsigned long *size)
+void *read_blob_entry(const struct cache_entry *ce, unsigned long *size)
 {
        enum object_type type;
        void *blob_data = read_object_file(&ce->oid, &type, size);
@@ -109,7 +109,7 @@ static int open_output_fd(char *path, const struct cache_entry *ce, int to_tempf
        }
 }
 
-static int fstat_output(int fd, const struct checkout *state, struct stat *st)
+int fstat_checkout_output(int fd, const struct checkout *state, struct stat *st)
 {
        /* use fstat() only when path == ce->name */
        if (fstat_is_reliable() &&
@@ -132,7 +132,7 @@ static int streaming_write_entry(const struct cache_entry *ce, char *path,
                return -1;
 
        result |= stream_blob_to_fd(fd, &ce->oid, filter, 1);
-       *fstat_done = fstat_output(fd, state, statbuf);
+       *fstat_done = fstat_checkout_output(fd, state, statbuf);
        result |= close(fd);
 
        if (result)
@@ -346,7 +346,7 @@ static int write_entry(struct cache_entry *ce,
 
                wrote = write_in_full(fd, new_blob, size);
                if (!to_tempfile)
-                       fstat_done = fstat_output(fd, state, &st);
+                       fstat_done = fstat_checkout_output(fd, state, &st);
                close(fd);
                free(new_blob);
                if (wrote < 0)
diff --git a/entry.h b/entry.h
index acbbb90220fed85d47daf30d281a248614c0cc0b..60df93ca78a55fff9e2d9563a884756783d7151c 100644 (file)
--- a/entry.h
+++ b/entry.h
@@ -39,4 +39,7 @@ int finish_delayed_checkout(struct checkout *state, int *nr_checkouts);
  */
 void unlink_entry(const struct cache_entry *ce);
 
+void *read_blob_entry(const struct cache_entry *ce, unsigned long *size);
+int fstat_checkout_output(int fd, const struct checkout *state, struct stat *st);
+
 #endif /* ENTRY_H */