We already have an item, we just need its metadata. There's no
need to re-resolve it. Somehow, resolving it again is also very
slow for large directories (perhaps re-reading metadata again
and again?), and this significantly speeds up things.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Reviewed-by: Rob Browning <rlb@defaultvalue.org>
Tested-by: Rob Browning <rlb@defaultvalue.org>
parent_item = resolution[-2][1] if len(resolution) > 1 else dir_item
yield display_info(b'..', parent_item, parent_item, b'..')
continue
- res = vfs.try_resolve(repo, name, parent=resolution, want_meta=False)
- res_name, res_item = res[-1]
+ res_item = vfs.ensure_item_has_metadata(repo, item, include_size=True)
yield display_info(name, item, res_item)