Lines Matching refs:lz4fWrite

181 LZ4F_errorCode_t LZ4F_writeOpen(LZ4_writeFile_t** lz4fWrite, FILE* fp, const LZ4F_preferences_t* prefsPtr)
186 if (fp == NULL || lz4fWrite == NULL)
189 *lz4fWrite = (LZ4_writeFile_t*)malloc(sizeof(LZ4_writeFile_t));
190 if (*lz4fWrite == NULL) {
197 (*lz4fWrite)->maxWriteSize = 64 * 1024;
200 (*lz4fWrite)->maxWriteSize = 256 * 1024;
203 (*lz4fWrite)->maxWriteSize = 1 * 1024 * 1024;
206 (*lz4fWrite)->maxWriteSize = 4 * 1024 * 1024;
209 free(lz4fWrite);
213 (*lz4fWrite)->maxWriteSize = 64 * 1024;
216 (*lz4fWrite)->dstBufMaxSize = LZ4F_compressBound((*lz4fWrite)->maxWriteSize, prefsPtr);
217 (*lz4fWrite)->dstBuf = (LZ4_byte*)malloc((*lz4fWrite)->dstBufMaxSize);
218 if ((*lz4fWrite)->dstBuf == NULL) {
219 free(*lz4fWrite);
223 ret = LZ4F_createCompressionContext(&(*lz4fWrite)->cctxPtr, LZ4F_getVersion());
225 free((*lz4fWrite)->dstBuf);
226 free(*lz4fWrite);
230 ret = LZ4F_compressBegin((*lz4fWrite)->cctxPtr, buf, LZ4F_HEADER_SIZE_MAX, prefsPtr);
232 LZ4F_freeCompressionContext((*lz4fWrite)->cctxPtr);
233 free((*lz4fWrite)->dstBuf);
234 free(*lz4fWrite);
239 LZ4F_freeCompressionContext((*lz4fWrite)->cctxPtr);
240 free((*lz4fWrite)->dstBuf);
241 free(*lz4fWrite);
245 (*lz4fWrite)->fp = fp;
246 (*lz4fWrite)->errCode = LZ4F_OK_NoError;
250 size_t LZ4F_write(LZ4_writeFile_t* lz4fWrite, void* buf, size_t size)
257 if (lz4fWrite == NULL || buf == NULL)
260 if (remain > lz4fWrite->maxWriteSize)
261 chunk = lz4fWrite->maxWriteSize;
265 ret = LZ4F_compressUpdate(lz4fWrite->cctxPtr,
266 lz4fWrite->dstBuf, lz4fWrite->dstBufMaxSize,
270 lz4fWrite->errCode = ret;
274 if(ret != fwrite(lz4fWrite->dstBuf, 1, ret, lz4fWrite->fp)) {
275 lz4fWrite->errCode = -LZ4F_ERROR_GENERIC;
286 LZ4F_errorCode_t LZ4F_writeClose(LZ4_writeFile_t* lz4fWrite)
290 if (lz4fWrite == NULL)
293 if (lz4fWrite->errCode == LZ4F_OK_NoError) {
294 ret = LZ4F_compressEnd(lz4fWrite->cctxPtr,
295 lz4fWrite->dstBuf, lz4fWrite->dstBufMaxSize,
301 if (ret != fwrite(lz4fWrite->dstBuf, 1, ret, lz4fWrite->fp)) {
307 LZ4F_freeCompressionContext(lz4fWrite->cctxPtr);
308 free(lz4fWrite->dstBuf);
309 free(lz4fWrite);