1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-14 22:24:57 +00:00

Ext2FS: Avoid a String allocation in lookup()

By using find() with a custom finder, we can avoid creating a temporary
key value that's only used for the hash lookup.
This commit is contained in:
Andreas Kling 2019-08-24 22:39:12 +02:00
parent d38bd3935b
commit ac7a559d96

View file

@ -1263,7 +1263,7 @@ InodeIdentifier Ext2FSInode::lookup(StringView name)
ASSERT(is_directory());
populate_lookup_cache();
LOCKER(m_lock);
auto it = m_lookup_cache.find(name);
auto it = m_lookup_cache.find(name.hash(), [&](auto& entry) { return entry.key == name; });
if (it != m_lookup_cache.end())
return { fsid(), (*it).value };
return {};