cannam@128: /* gzclose.c -- zlib gzclose() function cannam@128: * Copyright (C) 2004, 2010 Mark Adler cannam@128: * For conditions of distribution and use, see copyright notice in zlib.h cannam@128: */ cannam@128: cannam@128: #include "gzguts.h" cannam@128: cannam@128: /* gzclose() is in a separate file so that it is linked in only if it is used. cannam@128: That way the other gzclose functions can be used instead to avoid linking in cannam@128: unneeded compression or decompression routines. */ cannam@128: int ZEXPORT gzclose(file) cannam@128: gzFile file; cannam@128: { cannam@128: #ifndef NO_GZCOMPRESS cannam@128: gz_statep state; cannam@128: cannam@128: if (file == NULL) cannam@128: return Z_STREAM_ERROR; cannam@128: state = (gz_statep)file; cannam@128: cannam@128: return state->mode == GZ_READ ? gzclose_r(file) : gzclose_w(file); cannam@128: #else cannam@128: return gzclose_r(file); cannam@128: #endif cannam@128: }