aboutsummaryrefslogtreecommitdiffstats
path: root/g10/tofu.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2016-12-08 12:06:10 +0000
committerWerner Koch <[email protected]>2016-12-08 12:08:02 +0000
commitc3008bffac68b6f31e9ae9bad837cdce5de7c0db (patch)
tree2cf8b7f343d120be145c9a151ac396b5e34c661d /g10/tofu.c
parenttests: Add test for '--quick-set-expire'. (diff)
downloadgnupg-c3008bffac68b6f31e9ae9bad837cdce5de7c0db.tar.gz
gnupg-c3008bffac68b6f31e9ae9bad837cdce5de7c0db.zip
gpg: Fix portability problem.
* g10/tofu.c (build_conflict_set): Replace variable dynamic array. -- Note that clang complained that CONFLICT_SET_COUNT could be negative. Thus I added an assert. Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'g10/tofu.c')
-rw-r--r--g10/tofu.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/g10/tofu.c b/g10/tofu.c
index 5b3e84c2d..d095bce6a 100644
--- a/g10/tofu.c
+++ b/g10/tofu.c
@@ -2227,9 +2227,15 @@ build_conflict_set (tofu_dbs_t dbs,
int j;
strlist_t *prevp;
strlist_t iter_next;
- int die[conflict_set_count];
+ int *die;
- memset (die, 0, sizeof (die));
+ log_assert (conflict_set_count > 0);
+ die = xtrycalloc (1, conflict_set_count);
+ if (!die)
+ {
+ /*err = gpg_error_from_syserror ();*/
+ xoutofcore (); /* Fixme: Let the fucntion return an error. */
+ }
for (i = 0; i < conflict_set_count; i ++)
{
@@ -2269,6 +2275,7 @@ build_conflict_set (tofu_dbs_t dbs,
/* We shouldn't have removed the head. */
log_assert (conflict_set);
log_assert (conflict_set_count >= 1);
+ xfree (die);
}
xfree (kb_all);