fix(mappings): use all buckets in second round of unmap (#21534)

This commit is contained in:
zeertzjq
2022-12-26 11:20:37 +08:00
committed by GitHub
parent 6f25623e79
commit 357aab4c65
2 changed files with 11 additions and 4 deletions

View File

@@ -693,7 +693,7 @@ static int buf_do_map(int maptype, MapArguments *args, int mode, bool is_abbrev,
for (int round = 0; (round == 0 || maptype == MAPTYPE_UNMAP) && round <= 1
&& !did_it && !got_int; round++) {
int hash_start, hash_end;
if (has_lhs || is_abbrev) {
if ((round == 0 && has_lhs) || is_abbrev) {
// just use one hash
hash_start = is_abbrev ? 0 : MAP_HASH(mode, (uint8_t)lhs[0]);
hash_end = hash_start + 1;