diff options
author | Junio C Hamano <gitster@pobox.com> | 2017-02-10 12:52:27 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-02-10 12:52:27 -0800 |
commit | c1462b840517ec0d572b11848fefbd35e65a4f98 (patch) | |
tree | 486b7624629386655a368327a253f7637a7b5749 | |
parent | Merge branch 'jk/log-graph-name-only' (diff) | |
parent | dir: avoid allocation in fill_directory() (diff) | |
download | tgif-c1462b840517ec0d572b11848fefbd35e65a4f98.tar.xz |
Merge branch 'rs/fill-directory-optim'
Code clean-up.
* rs/fill-directory-optim:
dir: avoid allocation in fill_directory()
-rw-r--r-- | dir.c | 7 |
1 files changed, 3 insertions, 4 deletions
@@ -174,20 +174,19 @@ char *common_prefix(const struct pathspec *pathspec) int fill_directory(struct dir_struct *dir, const struct pathspec *pathspec) { - char *prefix; + const char *prefix; size_t prefix_len; /* * Calculate common prefix for the pathspec, and * use that to optimize the directory walk */ - prefix = common_prefix(pathspec); - prefix_len = prefix ? strlen(prefix) : 0; + prefix_len = common_prefix_len(pathspec); + prefix = prefix_len ? pathspec->items[0].match : ""; /* Read the directory and prune it */ read_directory(dir, prefix, prefix_len, pathspec); - free(prefix); return prefix_len; } |