MCPcopy Create free account
hub / github.com/git/git / read_index_extension

Function read_index_extension

read-cache.c:1732–1768  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1730}
1731
1732static int read_index_extension(struct index_state *istate,
1733 const char *ext, const char *data, unsigned long sz)
1734{
1735 switch (CACHE_EXT(ext)) {
1736 case CACHE_EXT_TREE:
1737 istate->cache_tree = cache_tree_read(data, sz);
1738 break;
1739 case CACHE_EXT_RESOLVE_UNDO:
1740 istate->resolve_undo = resolve_undo_read(data, sz, the_hash_algo);
1741 break;
1742 case CACHE_EXT_LINK:
1743 if (read_link_extension(istate, data, sz))
1744 return -1;
1745 break;
1746 case CACHE_EXT_UNTRACKED:
1747 istate->untracked = read_untracked_extension(data, sz);
1748 break;
1749 case CACHE_EXT_FSMONITOR:
1750 read_fsmonitor_extension(istate, data, sz);
1751 break;
1752 case CACHE_EXT_ENDOFINDEXENTRIES:
1753 case CACHE_EXT_INDEXENTRYOFFSETTABLE:
1754 /* already handled in do_read_index() */
1755 break;
1756 case CACHE_EXT_SPARSE_DIRECTORIES:
1757 /* no content, only an indicator */
1758 istate->sparse_index = INDEX_COLLAPSED;
1759 break;
1760 default:
1761 if (*ext < 'A' || 'Z' < *ext)
1762 return error(_("index uses %.4s extension, which we do not understand"),
1763 ext);
1764 fprintf_ln(stderr, _("ignoring %.4s extension"), ext);
1765 break;
1766 }
1767 return 0;
1768}
1769
1770/*
1771 * Parses the contents of the cache entry contained within the 'ondisk' buffer

Callers 1

load_index_extensionsFunction · 0.85

Calls 7

cache_tree_readFunction · 0.85
resolve_undo_readFunction · 0.85
read_link_extensionFunction · 0.85
read_untracked_extensionFunction · 0.85
read_fsmonitor_extensionFunction · 0.85
errorFunction · 0.85
fprintf_lnFunction · 0.85

Tested by

no test coverage detected