summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Hughes <richard@hughsie.com>2017-11-03 11:46:53 +0000
committerRichard Hughes <richard@hughsie.com>2017-11-03 11:46:53 +0000
commitf230c8d6c82868843b5d5ed6351249846883ef7f (patch)
treececd70b96c57b05741fb97aadbb4591c56399957
parent64c5077baddbb290c6f886d1e25afce0a2c572ce (diff)
downloadappstream-glib-f230c8d6c82868843b5d5ed6351249846883ef7f.tar.gz
Only try to set the file permissions on regular files
Fixes a build error with the mcomix package in openSUSE.
-rw-r--r--libappstream-builder/asb-utils.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libappstream-builder/asb-utils.c b/libappstream-builder/asb-utils.c
index e5dd813..82d94a4 100644
--- a/libappstream-builder/asb-utils.c
+++ b/libappstream-builder/asb-utils.c
@@ -411,7 +411,10 @@ asb_utils_explode (const gchar *filename,
valid = asb_utils_explode_file (entry, dir);
if (!valid)
continue;
- archive_entry_set_mode (entry, S_IRGRP | S_IWGRP | S_IRUSR | S_IWUSR);
+ if (archive_entry_symlink (entry) == NULL) {
+ archive_entry_set_mode (entry, S_IRGRP | S_IWGRP |
+ S_IRUSR | S_IWUSR);
+ }
r = archive_read_extract (arch, entry, 0);
if (r != ARCHIVE_OK) {
ret = FALSE;