summaryrefslogtreecommitdiff
path: root/ext/zip/lib/zip_unchange_archive.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/zip/lib/zip_unchange_archive.c')
-rw-r--r--ext/zip/lib/zip_unchange_archive.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/ext/zip/lib/zip_unchange_archive.c b/ext/zip/lib/zip_unchange_archive.c
index ca2b678544..e24ee21727 100644
--- a/ext/zip/lib/zip_unchange_archive.c
+++ b/ext/zip/lib/zip_unchange_archive.c
@@ -39,13 +39,15 @@
-ZIP_EXTERN(int)
+ZIP_EXTERN int
zip_unchange_archive(struct zip *za)
{
- free(za->ch_comment);
- za->ch_comment = NULL;
- za->ch_comment_len = -1;
-
+ if (za->comment_changed) {
+ _zip_string_free(za->comment_changes);
+ za->comment_changes = NULL;
+ za->comment_changed = 0;
+ }
+
za->ch_flags = za->flags;
return 0;