]> git.ipfire.org Git - thirdparty/libsolv.git/commitdiff
- fix error handling in solv_xfopen_buf
authorMichael Schroeder <mls@suse.de>
Mon, 10 Sep 2012 16:23:13 +0000 (18:23 +0200)
committerMichael Schroeder <mls@suse.de>
Mon, 10 Sep 2012 16:23:13 +0000 (18:23 +0200)
ext/solv_xfopen.c

index 4de122a98fae93a4674c6efdd2868c401607e4d8..429086ae50690abe97452ba8fbc0f385eccde0b9 100644 (file)
@@ -441,8 +441,8 @@ solv_xfopen_buf(const char *fn, char **bufp, size_t *buflp, const char *mode)
     bc->freemem = *bufp;
   if (!fp)
     {
-      *bc->bufp = solv_free(*bc->bufp);
-      *bc->buflp = 0;
+      if (*mode == 'w')
+       *bc->bufp = solv_free(*bc->bufp);
       cookie_bufclose(bc);
     }
   return fp;