hashmap: hashmap_move_one() should return -ENOENT when 'other' is NULL
-ENOENT is the same return value as if 'other' were an allocated hashmap that does not contain the key. A NULL hashmap is a possible way of expressing a hashmap that contains no key.
This commit is contained in:
@@ -886,15 +886,15 @@ int hashmap_move_one(Hashmap *h, Hashmap *other, const void *key) {
|
||||
unsigned h_hash, other_hash;
|
||||
struct hashmap_entry *e;
|
||||
|
||||
if (!other)
|
||||
return 0;
|
||||
|
||||
assert(h);
|
||||
|
||||
h_hash = bucket_hash(h, key);
|
||||
if (hash_scan(h, h_hash, key))
|
||||
return -EEXIST;
|
||||
|
||||
if (!other)
|
||||
return -ENOENT;
|
||||
|
||||
other_hash = bucket_hash(other, key);
|
||||
e = hash_scan(other, other_hash, key);
|
||||
if (!e)
|
||||
|
||||
Reference in New Issue
Block a user