Go to most recent revision |
    Details |
    Last modification |
    View Log
    | RSS feed
  
  
  
     
        
        | Rev | Author | Line No. | Line | 
     
     
        
           | 1 | cycrow | 1 | /* gzclose.c -- zlib gzclose() function
 | 
        
           |  |  | 2 |  * Copyright (C) 2004, 2010 Mark Adler
 | 
        
           |  |  | 3 |  * For conditions of distribution and use, see copyright notice in zlib.h
 | 
        
           |  |  | 4 |  */
 | 
        
           |  |  | 5 |   | 
        
           |  |  | 6 | #include "gzguts.h"
 | 
        
           |  |  | 7 |   | 
        
           |  |  | 8 | /* gzclose() is in a separate file so that it is linked in only if it is used.
 | 
        
           |  |  | 9 |    That way the other gzclose functions can be used instead to avoid linking in
 | 
        
           |  |  | 10 |    unneeded compression or decompression routines. */
 | 
        
           |  |  | 11 | int ZEXPORT gzclose(file)
 | 
        
           |  |  | 12 |     gzFile file;
 | 
        
           |  |  | 13 | {
 | 
        
           |  |  | 14 | #ifndef NO_GZCOMPRESS
 | 
        
           |  |  | 15 |     gz_statep state;
 | 
        
           |  |  | 16 |   | 
        
           |  |  | 17 |     if (file == NULL)
 | 
        
           |  |  | 18 |         return Z_STREAM_ERROR;
 | 
        
           |  |  | 19 |     state = (gz_statep)file;
 | 
        
           |  |  | 20 |   | 
        
           |  |  | 21 |     return state->mode == GZ_READ ? gzclose_r(file) : gzclose_w(file);
 | 
        
           |  |  | 22 | #else
 | 
        
           |  |  | 23 |     return gzclose_r(file);
 | 
        
           |  |  | 24 | #endif
 | 
        
           |  |  | 25 | }
 |