aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2017-06-26 10:53:52 +0300
committerTimo Teräs <timo.teras@iki.fi>2017-10-06 16:18:27 +0300
commit3e509539c4a94a7a3d8b62c409df444957a60eda (patch)
treef761521287cfd6c8baf68206650a9d93d281e68a /src
parent34a97bbe80fc7f511813f816c5a3a6b09fb54fcc (diff)
downloadapk-tools-3e509539c4a94a7a3d8b62c409df444957a60eda.tar.bz2
apk-tools-3e509539c4a94a7a3d8b62c409df444957a60eda.tar.xz
db: fix current directory instance caching in tar extraction
Depending how the directory entries are ordered, the cached dir instance might not have been updated correctly. This has not been a problem as the entries have been ordered, but is now triggered on ppc.
Diffstat (limited to 'src')
-rw-r--r--src/database.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/database.c b/src/database.c
index 7c3c646..ab6a8cb 100644
--- a/src/database.c
+++ b/src/database.c
@@ -2409,7 +2409,7 @@ static int apk_db_install_archive_entry(void *_ctx,
return 0;
/* Make sure the file is part of the cached directory tree */
- diri = find_diri(ipkg, bdir, diri, &ctx->file_diri_node);
+ diri = ctx->diri = find_diri(ipkg, bdir, diri, &ctx->file_diri_node);
if (diri == NULL) {
if (!APK_BLOB_IS_NULL(bdir)) {
apk_error(PKG_VER_FMT": "BLOB_FMT": no dirent in archive",