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 |
} |