diff --git a/pisi/archive.py b/pisi/archive.py index 348d0dfa..609d7bf2 100644 --- a/pisi/archive.py +++ b/pisi/archive.py @@ -171,6 +171,11 @@ class ArchiveZip(ArchiveBase): d = os.path.join(target_dir, outpath) if not os.path.isdir(d): os.makedirs(d) + perm = info.external_attr + perm &= 0x08FF0000 + perm >>= 16 + perm |= 0x00000100 + os.chmod(d, perm) continue # check that output dir is present