diff options
author | Timo Teräs <timo.teras@iki.fi> | 2017-06-26 10:53:52 +0300 |
---|---|---|
committer | Timo Teräs <timo.teras@iki.fi> | 2017-10-06 16:18:27 +0300 |
commit | 3e509539c4a94a7a3d8b62c409df444957a60eda (patch) | |
tree | f761521287cfd6c8baf68206650a9d93d281e68a | |
parent | 34a97bbe80fc7f511813f816c5a3a6b09fb54fcc (diff) | |
download | apk-tools-3e509539c4a94a7a3d8b62c409df444957a60eda.tar.gz apk-tools-3e509539c4a94a7a3d8b62c409df444957a60eda.tar.bz2 apk-tools-3e509539c4a94a7a3d8b62c409df444957a60eda.tar.xz apk-tools-3e509539c4a94a7a3d8b62c409df444957a60eda.zip |
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.
-rw-r--r-- | src/database.c | 2 |
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", |