Fix memory leaks in error case.
Second of these is Coverity CID 1295394.
diff --git a/lib/zip_dirent.c b/lib/zip_dirent.c
index b23c061..3025079 100644
--- a/lib/zip_dirent.c
+++ b/lib/zip_dirent.c
@@ -709,6 +709,7 @@
         zip_buffer_t *ef_buffer = _zip_buffer_new(ef_zip64, sizeof(ef_zip64));
         if (ef_buffer == NULL) {
             zip_error_set(&za->error, ZIP_ER_MEMORY, 0);
+	    _zip_ef_free(ef);
             return -1;
         }
         
@@ -735,6 +736,7 @@
         if (!_zip_buffer_ok(ef_buffer)) {
             zip_error_set(&za->error, ZIP_ER_INTERNAL, 0);
             _zip_buffer_free(ef_buffer);
+	    _zip_ef_free(ef);
             return -1;
         }