summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/libalpm/be_local.c2
-rw-r--r--lib/libalpm/util.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/lib/libalpm/be_local.c b/lib/libalpm/be_local.c
index 2454cdcb..300660b6 100644
--- a/lib/libalpm/be_local.c
+++ b/lib/libalpm/be_local.c
@@ -789,7 +789,7 @@ static int local_db_read(alpm_pkg_t *info, alpm_dbinfrq_t inforeq)
while(safe_fgets(line, sizeof(line), fp) &&
(len = _alpm_strip_newline(line, 0))) {
if(!_alpm_greedy_grow((void **)&files, &files_size,
- (files_size ? files_size + sizeof(alpm_file_t) : 8 * sizeof(alpm_file_t)))) {
+ (files_count ? (files_count + 1) * sizeof(alpm_file_t) : 8 * sizeof(alpm_file_t)))) {
goto error;
}
/* since we know the length of the file string already,
diff --git a/lib/libalpm/util.c b/lib/libalpm/util.c
index 22408d70..ffd3c73d 100644
--- a/lib/libalpm/util.c
+++ b/lib/libalpm/util.c
@@ -1328,7 +1328,7 @@ void *_alpm_greedy_grow(void **data, size_t *current, const size_t required)
return NULL;
}
- return _alpm_realloc(data, current, required);
+ return _alpm_realloc(data, current, newsize);
}
void _alpm_alloc_fail(size_t size)