]> git.ipfire.org Git - thirdparty/git.git/commitdiff
read-cache.c: reduce unnecessary cache entry name copying
authorZheNing Hu <adlternative@gmail.com>
Sun, 5 Jun 2022 13:37:28 +0000 (13:37 +0000)
committerJunio C Hamano <gitster@pobox.com>
Mon, 6 Jun 2022 17:37:06 +0000 (10:37 -0700)
575fa8a3 (read-cache: read data in a hash-independent way,
2019-02-19) added a new code to copy from the on-disk data into the
name member of the in-core cache entry, which is already done
immediately after that in a way that takes prefix-compression into
account.

Remove this code, as it is not just unnecessary, but also can be
reading beyond the on-disk data, when we are copying very long
prefix string from the previous entry.

Signed-off-by: ZheNing Hu <adlternative@gmail.com>
[jc: rewrote the log message with RĂ©ne's findings]
Signed-off-by: Junio C Hamano <gitster@pobox.com>
read-cache.c

index 4df97e185e9c80cd061ab1d00143eceed81a0242..02789a63ad3f5dd454881eeceb65fda9c4a96bd6 100644 (file)
@@ -1944,8 +1944,6 @@ static struct cache_entry *create_from_disk(struct mem_pool *ce_mem_pool,
        ce->ce_namelen = len;
        ce->index = 0;
        oidread(&ce->oid, ondisk->data);
-       memcpy(ce->name, name, len);
-       ce->name[len] = '\0';
 
        if (expand_name_field) {
                if (copy_len)