From f7ad27e2f74336d61eddd1aa068b221a1beedf0b Mon Sep 17 00:00:00 2001 From: Vivian Zhang Date: Tue, 23 Jun 2009 19:55:36 +0200 Subject: proplist: set prev_item when adding a new key/value pair Closes bugs.fd.o #22292 --- src/proplist.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/proplist.c b/src/proplist.c index 0eb26db..6c4b9dc 100644 --- a/src/proplist.c +++ b/src/proplist.c @@ -190,7 +190,8 @@ int ca_proplist_setf(ca_proplist *p, const char *key, const char *format, ...) { p->prop_hashtable[h] = prop; prop->prev_item = NULL; - prop->next_item = p->first_item; + if ((prop->next_item = p->first_item)) + prop->next_item->prev_item = prop; p->first_item = prop; finish: @@ -248,7 +249,8 @@ int ca_proplist_set(ca_proplist *p, const char *key, const void *data, size_t nb p->prop_hashtable[h] = prop; prop->prev_item = NULL; - prop->next_item = p->first_item; + if ((prop->next_item = p->first_item)) + prop->next_item->prev_item = prop; p->first_item = prop; finish: -- cgit