summaryrefslogtreecommitdiffstats
path: root/src/archive.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/archive.c')
-rw-r--r--src/archive.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/archive.c b/src/archive.c
index e7260b6..f60cb1b 100644
--- a/src/archive.c
+++ b/src/archive.c
@@ -388,7 +388,10 @@ int apk_archive_entry_extract(int atfd, const struct apk_file_info *ae,
break;
}
if (r == 0) {
- r = fchownat(atfd, fn, ae->uid, ae->gid, atflags);
+ r = fchownat(atfd, fn,
+ apk_resolve_uid(ae->uname, ae->uid),
+ apk_resolve_gid(ae->gname, ae->gid),
+ atflags);
if (r < 0) {
apk_error("Failed to set ownership on %s: %s",
fn, strerror(errno));