diff options
Diffstat (limited to 'src/Common/libzip/zip_source_free.c')
-rw-r--r-- | src/Common/libzip/zip_source_free.c | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/src/Common/libzip/zip_source_free.c b/src/Common/libzip/zip_source_free.c index 90704699..7cb35255 100644 --- a/src/Common/libzip/zip_source_free.c +++ b/src/Common/libzip/zip_source_free.c @@ -17,7 +17,7 @@ 3. The names of the authors may not be used to endorse or promote products derived from this software without specific prior written permission. - + THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE @@ -38,34 +38,33 @@ ZIP_EXTERN void -zip_source_free(zip_source_t *src) -{ +zip_source_free(zip_source_t *src) { if (src == NULL) return; if (src->refcount > 0) { - src->refcount--; + src->refcount--; } if (src->refcount > 0) { - return; + return; } - + if (ZIP_SOURCE_IS_OPEN_READING(src)) { src->open_count = 1; /* force close */ zip_source_close(src); } if (ZIP_SOURCE_IS_OPEN_WRITING(src)) { - zip_source_rollback_write(src); + zip_source_rollback_write(src); } - + if (src->source_archive && !src->source_closed) { - _zip_deregister_source(src->source_archive, src); + _zip_deregister_source(src->source_archive, src); } - + (void)_zip_source_call(src, NULL, 0, ZIP_SOURCE_FREE); - + if (src->src) { - zip_source_free(src->src); + zip_source_free(src->src); } free(src); |