diff options
author | Luiz Capitulino <lcapitulino@redhat.com> | 2009-12-14 18:53:20 -0200 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2009-12-19 08:26:21 -0600 |
commit | c5238ac21b82f92ab68ee4877a6a7cdfa0bb2605 (patch) | |
tree | 2c663023ef70967a73019d6aa66bacd510a4e981 | |
parent | 99917a99cde9e024a7211f35104f940ac4e811bc (diff) |
QDict: Fix size update
Key replacement should not update the dictionary's size.
This commit also adds a test for the bug.
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
(cherry picked from commit 29ec3156ee66b6e2553a0adb2f35cb143edddc5f)
-rw-r--r-- | check-qdict.c | 2 | ||||
-rw-r--r-- | qdict.c | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/check-qdict.c b/check-qdict.c index c37d448227..f2b4826560 100644 --- a/check-qdict.c +++ b/check-qdict.c @@ -205,6 +205,8 @@ START_TEST(qdict_put_exists_test) value = qdict_get_int(tests_dict, key); fail_unless(value == 2); + + fail_unless(qdict_size(tests_dict) == 1); } END_TEST @@ -122,9 +122,8 @@ void qdict_put_obj(QDict *qdict, const char *key, QObject *value) /* allocate a new entry */ entry = alloc_entry(key, value); QLIST_INSERT_HEAD(&qdict->table[hash], entry, next); + qdict->size++; } - - qdict->size++; } /** |