return true;
}
- auto key = DirFragIdent(ino, frag);
- if (dentries.count(key) == 0) {
- DamageEntryRef entry = std::make_shared<DentryDamage>(
- ino, frag, dname, snap_id);
+ auto& df_dentries = dentries[DirFragIdent(ino, frag)];
+ if (auto [it, inserted] = df_dentries.try_emplace(DentryIdent(dname, snap_id)); inserted) {
+ auto entry = std::make_shared<DentryDamage>(ino, frag, dname, snap_id);
entry->path = path;
- dentries[key][DentryIdent(dname, snap_id)] = entry;
+ it->second = entry;
by_id[entry->id] = std::move(entry);
}
return true;
}
- auto key = DirFragIdent(ino, frag);
- if (dirfrags.count(key) == 0) {
+ if (auto [it, inserted] = dirfrags.try_emplace(DirFragIdent(ino, frag)); inserted) {
DamageEntryRef entry = std::make_shared<DirFragDamage>(ino, frag);
entry->path = path;
- dirfrags[key] = entry;
+ it->second = entry;
by_id[entry->id] = std::move(entry);
}
return true;
}
- if (remotes.count(ino) == 0) {
+ if (auto [it, inserted] = remotes.try_emplace(ino); inserted) {
auto entry = std::make_shared<BacktraceDamage>(ino);
entry->path = path;
- remotes[ino] = entry;
+ it->second = entry;
by_id[entry->id] = std::move(entry);
}