]> granicus.if.org Git - p11-kit/commitdiff
trust: Double check that index bucket is valid before access
authorStef Walter <stef@thewalter.net>
Fri, 8 Aug 2014 15:40:57 +0000 (17:40 +0200)
committerStef Walter <stef@thewalter.net>
Fri, 8 Aug 2014 16:44:51 +0000 (18:44 +0200)
trust/index.c

index 9a193c5307f60a67f57efddf49ef6154a0afa83e..f4b6b4b3e21fb8f8039b658cd9a79bf2a36390a9 100644 (file)
@@ -264,9 +264,9 @@ bucket_insert (index_bucket *bucket,
                alloc = alloc ? alloc * 2 : 1;
                return_if_fail (alloc != 0);
                bucket->elem = realloc (bucket->elem, alloc * sizeof (CK_OBJECT_HANDLE));
-               return_if_fail (bucket->elem != NULL);
        }
 
+       return_if_fail (bucket->elem != NULL);
        memmove (bucket->elem + at + 1, bucket->elem + at,
                 (bucket->num - at) * sizeof (CK_OBJECT_HANDLE));
        bucket->elem[at] = handle;
@@ -284,9 +284,9 @@ bucket_push (index_bucket *bucket,
                alloc = alloc ? alloc * 2 : 1;
                return_val_if_fail (alloc != 0, false);
                bucket->elem = realloc (bucket->elem, alloc * sizeof (CK_OBJECT_HANDLE));
-               return_val_if_fail (bucket->elem != NULL, false);
        }
 
+       return_val_if_fail (bucket->elem != NULL, false);
        bucket->elem[bucket->num++] = handle;
        return true;
 }