summaryrefslogtreecommitdiff
path: root/trust
diff options
context:
space:
mode:
authorStef Walter <stefw@gnome.org>2013-03-20 20:59:26 +0100
committerStef Walter <stefw@gnome.org>2013-03-20 22:22:22 +0100
commit57d8f36a6cfbde5a9a783f11f2b75f19005c23e1 (patch)
treed21f862a9698ef6066ce2b14ef82fbd8c370f9ac /trust
parent9cf89e4b43e5e018bb3103be1873a3993769ce4a (diff)
Fix invalid memory accesses reported by 'make memcheck'
These are things that showed up in valgrind while running the tests.
Diffstat (limited to 'trust')
-rw-r--r--trust/index.c2
-rw-r--r--trust/tests/test-index.c2
2 files changed, 3 insertions, 1 deletions
diff --git a/trust/index.c b/trust/index.c
index 6e9a46c..1275cd9 100644
--- a/trust/index.c
+++ b/trust/index.c
@@ -648,7 +648,7 @@ index_select (p11_index *index,
for (j = 1; j < num; j++) {
assert (buckets[j]->elem); /* checked above */
at = binary_search (buckets[j]->elem, 0, buckets[j]->num, handle);
- if (buckets[j]->elem[at] != handle) {
+ if (at >= buckets[j]->num || buckets[j]->elem[at] != handle) {
handle = 0;
break;
}
diff --git a/trust/tests/test-index.c b/trust/tests/test-index.c
index 3cda272..d58a510 100644
--- a/trust/tests/test-index.c
+++ b/trust/tests/test-index.c
@@ -539,6 +539,8 @@ test_find_all (CuTest *tc)
free (check);
/* A double check of this method */
+ one = 0UL;
+ check = &one;
CuAssertTrue (tc, !handles_are (check, 29292929, 0UL));
CuAssertTrue (tc, !handles_are (NULL, 0UL));