]> pd.if.org Git - pdclib.old/blobdiff - functions/stdio/fclose.c
PDCLIB-26 #resolve fixed don't leak setvbuf allocated buffers
[pdclib.old] / functions / stdio / fclose.c
index 945241318afe09c8012d812412621ba50e13338c..bc8d852e4d378f4ceb8d154cba1cc18c4e5852aa 100644 (file)
@@ -55,6 +55,11 @@ int fclose( FILE * stream )
             {
                 remove( stream->filename );
             }
+            /* Free user buffer (SetVBuf allocated) */
+            if ( ! ( stream->status & _PDCLIB_FREEBUFFER ) )
+            {
+                free( stream->buffer );
+            }
             /* Free stream */
             if ( ! ( stream->status & _PDCLIB_STATIC ) )
             {