X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=read-cache.c;h=35fec468b1951cc17606fca8edc47f809471f652;hb=34baebcee1d66be4cc096a69ba448cd24dcedf21;hp=2c03ec3069decb20f7557af4ac7dbe295f2dcf9c;hpb=10d9d887ecdc81197162d7bbe5dfc0d028498fd6;p=git.git diff --git a/read-cache.c b/read-cache.c index 2c03ec306..35fec468b 100644 --- a/read-cache.c +++ b/read-cache.c @@ -1155,7 +1155,7 @@ int read_index_from(struct index_state *istate, const char *path) size_t mmap_size; errno = EBUSY; - if (istate->alloc) + if (istate->initialized) return istate->cache_nr; errno = ENOENT; @@ -1195,6 +1195,7 @@ int read_index_from(struct index_state *istate, const char *path) * index size */ istate->alloc = xmalloc(estimate_cache_size(mmap_size, istate->cache_nr)); + istate->initialized = 1; src_offset = sizeof(*hdr); dst_offset = 0; @@ -1247,6 +1248,7 @@ int discard_index(struct index_state *istate) cache_tree_free(&(istate->cache_tree)); free(istate->alloc); istate->alloc = NULL; + istate->initialized = 0; /* no need to throw away allocated active_cache */ return 0;