Imported Upstream version 1.9.1
[platform/upstream/libzip.git] / lib / zip_file_set_external_attributes.c
index bb2ea61..1a0028d 100644 (file)
@@ -1,9 +1,9 @@
 /*
   zip_file_set_external_attributes.c -- set external attributes for entry
-  Copyright (C) 2013-2019 Dieter Baron and Thomas Klausner
+  Copyright (C) 2013-2021 Dieter Baron and Thomas Klausner
 
   This file is part of libzip, a library to manipulate ZIP archives.
-  The authors can be contacted at <libzip@nih.at>
+  The authors can be contacted at <info@libzip.org>
 
   Redistribution and use in source and binary forms, with or without
   modification, are permitted provided that the following conditions
@@ -41,11 +41,11 @@ zip_file_set_external_attributes(zip_t *za, zip_uint64_t idx, zip_flags_t flags,
     zip_uint32_t unchanged_attributes;
 
     if (_zip_get_dirent(za, idx, 0, NULL) == NULL)
-       return -1;
+        return -1;
 
     if (ZIP_IS_RDONLY(za)) {
-       zip_error_set(&za->error, ZIP_ER_RDONLY, 0);
-       return -1;
+        zip_error_set(&za->error, ZIP_ER_RDONLY, 0);
+        return -1;
     }
 
     e = za->entry + idx;
@@ -56,26 +56,26 @@ zip_file_set_external_attributes(zip_t *za, zip_uint64_t idx, zip_flags_t flags,
     changed = (opsys != unchanged_opsys || attributes != unchanged_attributes);
 
     if (changed) {
-       if (e->changes == NULL) {
-           if ((e->changes = _zip_dirent_clone(e->orig)) == NULL) {
-               zip_error_set(&za->error, ZIP_ER_MEMORY, 0);
-               return -1;
-           }
-       }
-       e->changes->version_madeby = (zip_uint16_t)((opsys << 8) | (e->changes->version_madeby & 0xff));
-       e->changes->ext_attrib = attributes;
-       e->changes->changed |= ZIP_DIRENT_ATTRIBUTES;
+        if (e->changes == NULL) {
+            if ((e->changes = _zip_dirent_clone(e->orig)) == NULL) {
+                zip_error_set(&za->error, ZIP_ER_MEMORY, 0);
+                return -1;
+            }
+        }
+        e->changes->version_madeby = (zip_uint16_t)((opsys << 8) | (e->changes->version_madeby & 0xff));
+        e->changes->ext_attrib = attributes;
+        e->changes->changed |= ZIP_DIRENT_ATTRIBUTES;
     }
     else if (e->changes) {
-       e->changes->changed &= ~ZIP_DIRENT_ATTRIBUTES;
-       if (e->changes->changed == 0) {
-           _zip_dirent_free(e->changes);
-           e->changes = NULL;
-       }
-       else {
-           e->changes->version_madeby = (zip_uint16_t)((unchanged_opsys << 8) | (e->changes->version_madeby & 0xff));
-           e->changes->ext_attrib = unchanged_attributes;
-       }
+        e->changes->changed &= ~ZIP_DIRENT_ATTRIBUTES;
+        if (e->changes->changed == 0) {
+            _zip_dirent_free(e->changes);
+            e->changes = NULL;
+        }
+        else {
+            e->changes->version_madeby = (zip_uint16_t)((unchanged_opsys << 8) | (e->changes->version_madeby & 0xff));
+            e->changes->ext_attrib = unchanged_attributes;
+        }
     }
 
     return 0;