MCPcopy Create free account
hub / github.com/diasurgical/devilution / PkwareDecompress

Function PkwareDecompress

Source/encrypt.cpp:143–163  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

141}
142
143void PkwareDecompress(void *param, int recv_size, int dwMaxBytes)
144{
145 char *ptr;
146 BYTE *pbInBuff, *pbOutBuff;
147 TDataInfo info;
148
149 ptr = (char *)DiabloAllocPtr(CMP_BUFFER_SIZE);
150 pbInBuff = (BYTE *)param;
151 pbOutBuff = DiabloAllocPtr(dwMaxBytes);
152
153 info.srcData = pbInBuff;
154 info.srcOffset = 0;
155 info.destData = pbOutBuff;
156 info.destOffset = 0;
157 info.size = recv_size;
158
159 explode(PkwareBufferRead, PkwareBufferWrite, ptr, &info);
160 memcpy(pbInBuff, pbOutBuff, info.destOffset);
161 mem_free_dbg(ptr);
162 mem_free_dbg(pbOutBuff);
163}
164
165DEVILUTION_END_NAMESPACE

Callers 1

DeltaImportDataFunction · 0.85

Calls 3

DiabloAllocPtrFunction · 0.85
explodeFunction · 0.85
mem_free_dbgFunction · 0.85

Tested by

no test coverage detected