MCPcopy Create free account
hub / github.com/StrongPC123/Far-Cry-1-Source-Full / ReadCompressedFile

Method ReadCompressedFile

CrySystem/CompressedFile.cpp:68–97  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

66}
67
68unsigned int CSystem::ReadCompressedFile(char *filename, void *data, unsigned int maxbitlen)
69{
70 FILE * pFile=fxopen(filename, "rb");
71 if (!pFile)
72 return 0;
73
74 /*
75 fseek(pFile,0,SEEK_END);
76 long nLen=ftell(pFile);
77 fseek(pFile,0,SEEK_SET);
78 */
79
80 unsigned int bitlen;
81
82#ifdef USE_COMPRESSION
83 gzFile f = gzdopen(fileno(pFile), "rb9");
84 gzread(f, &bitlen, sizeof(int));
85 assert(bitlen<=maxbitlen); // FIXME: nicer if caller doesn't need to know buffer size in advance
86 gzread(f, data, BITS2BYTES(bitlen));
87 gzclose(f);
88 fclose(pFile);
89#else
90 fread(pFile, &bitlen, sizeof(int));
91 assert(bitlen<=maxbitlen); // FIXME: nicer if caller doesn't need to know buffer size in advance
92 fread(pFile, data, BITS2BYTES(bitlen));
93 fclose(pFile);
94#endif
95
96 return bitlen;
97};

Callers 2

LoadMethod · 0.80
GetSaveGameListMethod · 0.80

Calls 3

fxopenFunction · 0.50
gzdopenFunction · 0.50
gzcloseFunction · 0.50

Tested by

no test coverage detected