Imported Upstream version 1.9.1
[platform/upstream/libzip.git] / lib / zip_file_set_comment.c
index ae6b602..f50953b 100644 (file)
@@ -1,9 +1,9 @@
 /*
   zip_file_set_comment.c -- set comment for file in archive
-  Copyright (C) 2006-2018 Dieter Baron and Thomas Klausner
+  Copyright (C) 2006-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
@@ -44,57 +44,57 @@ zip_file_set_comment(zip_t *za, zip_uint64_t idx, const char *comment, zip_uint1
     int changed;
 
     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;
     }
 
     if (len > 0 && comment == NULL) {
-       zip_error_set(&za->error, ZIP_ER_INVAL, 0);
-       return -1;
+        zip_error_set(&za->error, ZIP_ER_INVAL, 0);
+        return -1;
     }
 
     if (len > 0) {
-       if ((cstr = _zip_string_new((const zip_uint8_t *)comment, len, flags, &za->error)) == NULL)
-           return -1;
-       if ((flags & ZIP_FL_ENCODING_ALL) == ZIP_FL_ENC_GUESS && _zip_guess_encoding(cstr, ZIP_ENCODING_UNKNOWN) == ZIP_ENCODING_UTF8_GUESSED)
-           cstr->encoding = ZIP_ENCODING_UTF8_KNOWN;
+        if ((cstr = _zip_string_new((const zip_uint8_t *)comment, len, flags, &za->error)) == NULL)
+            return -1;
+        if ((flags & ZIP_FL_ENCODING_ALL) == ZIP_FL_ENC_GUESS && _zip_guess_encoding(cstr, ZIP_ENCODING_UNKNOWN) == ZIP_ENCODING_UTF8_GUESSED)
+            cstr->encoding = ZIP_ENCODING_UTF8_KNOWN;
     }
     else
-       cstr = NULL;
+        cstr = NULL;
 
     e = za->entry + idx;
 
     if (e->changes) {
-       _zip_string_free(e->changes->comment);
-       e->changes->comment = NULL;
-       e->changes->changed &= ~ZIP_DIRENT_COMMENT;
+        _zip_string_free(e->changes->comment);
+        e->changes->comment = NULL;
+        e->changes->changed &= ~ZIP_DIRENT_COMMENT;
     }
 
     if (e->orig && e->orig->comment)
-       changed = !_zip_string_equal(e->orig->comment, cstr);
+        changed = !_zip_string_equal(e->orig->comment, cstr);
     else
-       changed = (cstr != NULL);
+        changed = (cstr != NULL);
 
     if (changed) {
-       if (e->changes == NULL) {
-           if ((e->changes = _zip_dirent_clone(e->orig)) == NULL) {
-               zip_error_set(&za->error, ZIP_ER_MEMORY, 0);
-               _zip_string_free(cstr);
-               return -1;
-           }
-       }
-       e->changes->comment = cstr;
-       e->changes->changed |= ZIP_DIRENT_COMMENT;
+        if (e->changes == NULL) {
+            if ((e->changes = _zip_dirent_clone(e->orig)) == NULL) {
+                zip_error_set(&za->error, ZIP_ER_MEMORY, 0);
+                _zip_string_free(cstr);
+                return -1;
+            }
+        }
+        e->changes->comment = cstr;
+        e->changes->changed |= ZIP_DIRENT_COMMENT;
     }
     else {
-       _zip_string_free(cstr);
-       if (e->changes && e->changes->changed == 0) {
-           _zip_dirent_free(e->changes);
-           e->changes = NULL;
-       }
+        _zip_string_free(cstr);
+        if (e->changes && e->changes->changed == 0) {
+            _zip_dirent_free(e->changes);
+            e->changes = NULL;
+        }
     }
 
     return 0;