summaryrefslogtreecommitdiffstats
path: root/src/idxset.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2004-06-14 18:38:50 +0000
committerLennart Poettering <lennart@poettering.net>2004-06-14 18:38:50 +0000
commitc8cf0c1ce9cf1b38b302ae4a2a6fa798fef85f08 (patch)
tree9f73e3140dc8762a78b4972f921077f39c4b66b0 /src/idxset.c
parentedfad835cb7e4ab9f62de81cf4bf6b6ad9610b02 (diff)
a bunch of fixes
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@10 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'src/idxset.c')
-rw-r--r--src/idxset.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/idxset.c b/src/idxset.c
index f0d7ad87..fe447ac6 100644
--- a/src/idxset.c
+++ b/src/idxset.c
@@ -152,8 +152,8 @@ int idxset_put(struct idxset*s, void *p, uint32_t *index) {
s->hash_table[h] = e;
/* Insert into array */
- extend_array(s, s->index);
- a = array_index(s, s->index);
+ extend_array(s, e->index);
+ a = array_index(s, e->index);
assert(a && !*a);
*a = e;
@@ -185,6 +185,9 @@ void* idxset_get_by_index(struct idxset*s, uint32_t index) {
if (!(a = array_index(s, index)))
return NULL;
+ if (!*a)
+ return NULL;
+
return (*a)->data;
}