--- ./ext/solv_xfopen.h_orig	2021-03-25 08:23:34 +0000
+++ ./ext/solv_xfopen.h	2021-03-25 07:12:20 +0000
@@ -15,4 +15,5 @@
 extern int   solv_xfopen_iscompressed(const char *fn);
 
 extern gzFile save_gzf;
+extern gzFile fd_save_gzf;
 #endif
--- ./ext/solv_xfopen.c_orig	2021-03-25 08:40:31 +0000
+++ ./ext/solv_xfopen.c	2021-03-25 08:40:00 +0000
@@ -664,6 +664,7 @@
  #include <zlib.h>
  
  gzFile save_gzf;
+ gzFile fd_save_gzf;
  
  static inline FILE *mygzfopen(const char *fn, const char *mode)
  {
@@ -678,10 +679,11 @@
  static inline FILE *mygzfdopen(int fd, const char *mode)
  {
    gzFile gzf = gzdopen(fd, mode);
+   fd_save_gzf = gzf;
  #if 0
    return cookieopen(gzf, mode, cookie_gzread, cookie_gzwrite, cookie_gzclose);
  #endif
- return (FILE *)gzf;
+ return gzf;
  
  }
 
