Lines Matching refs:strm

170 lzma_strm_init(lzma_stream *strm)
172 if (strm == NULL)
175 if (strm->internal == NULL) {
176 strm->internal = lzma_alloc(sizeof(lzma_internal),
177 strm->allocator);
178 if (strm->internal == NULL)
181 strm->internal->next = LZMA_NEXT_CODER_INIT;
184 memzero(strm->internal->supported_actions,
185 sizeof(strm->internal->supported_actions));
186 strm->internal->sequence = ISEQ_RUN;
187 strm->internal->allow_buf_error = false;
189 strm->total_in = 0;
190 strm->total_out = 0;
197 lzma_code(lzma_stream *strm, lzma_action action)
200 if ((strm->next_in == NULL && strm->avail_in != 0)
201 || (strm->next_out == NULL && strm->avail_out != 0)
202 || strm->internal == NULL
203 || strm->internal->next.code == NULL
205 || !strm->internal->supported_actions[action])
210 if (strm->reserved_ptr1 != NULL
211 || strm->reserved_ptr2 != NULL
212 || strm->reserved_ptr3 != NULL
213 || strm->reserved_ptr4 != NULL
214 || strm->reserved_int1 != 0
215 || strm->reserved_int2 != 0
216 || strm->reserved_int3 != 0
217 || strm->reserved_int4 != 0
218 || strm->reserved_enum1 != LZMA_RESERVED_ENUM
219 || strm->reserved_enum2 != LZMA_RESERVED_ENUM)
222 switch (strm->internal->sequence) {
229 strm->internal->sequence = ISEQ_SYNC_FLUSH;
233 strm->internal->sequence = ISEQ_FULL_FLUSH;
237 strm->internal->sequence = ISEQ_FINISH;
241 strm->internal->sequence = ISEQ_FULL_BARRIER;
251 || strm->internal->avail_in != strm->avail_in)
258 || strm->internal->avail_in != strm->avail_in)
265 || strm->internal->avail_in != strm->avail_in)
272 || strm->internal->avail_in != strm->avail_in)
287 lzma_ret ret = strm->internal->next.code(
288 strm->internal->next.coder, strm->allocator,
289 strm->next_in, &in_pos, strm->avail_in,
290 strm->next_out, &out_pos, strm->avail_out, action);
292 strm->next_in += in_pos;
293 strm->avail_in -= in_pos;
294 strm->total_in += in_pos;
296 strm->next_out += out_pos;
297 strm->avail_out -= out_pos;
298 strm->total_out += out_pos;
300 strm->internal->avail_in = strm->avail_in;
311 if (strm->internal->allow_buf_error)
314 strm->internal->allow_buf_error = true;
316 strm->internal->allow_buf_error = false;
321 strm->internal->allow_buf_error = false;
326 if (strm->internal->sequence == ISEQ_SYNC_FLUSH
327 || strm->internal->sequence == ISEQ_FULL_FLUSH
328 || strm->internal->sequence
330 strm->internal->sequence = ISEQ_RUN;
332 strm->internal->sequence = ISEQ_END;
342 strm->internal->allow_buf_error = false;
348 strm->internal->sequence = ISEQ_ERROR;
357 lzma_end(lzma_stream *strm)
359 if (strm != NULL && strm->internal != NULL) {
360 lzma_next_end(&strm->internal->next, strm->allocator);
361 lzma_free(strm->internal, strm->allocator);
362 strm->internal = NULL;
370 lzma_get_progress(lzma_stream *strm,
373 if (strm->internal->next.get_progress != NULL) {
374 strm->internal->next.get_progress(strm->internal->next.coder,
377 *progress_in = strm->total_in;
378 *progress_out = strm->total_out;
386 lzma_get_check(const lzma_stream *strm)
390 if (strm->internal->next.get_check == NULL)
393 return strm->internal->next.get_check(strm->internal->next.coder);
398 lzma_memusage(const lzma_stream *strm)
403 if (strm == NULL || strm->internal == NULL
404 || strm->internal->next.memconfig == NULL
405 || strm->internal->next.memconfig(
406 strm->internal->next.coder,
415 lzma_memlimit_get(const lzma_stream *strm)
420 if (strm == NULL || strm->internal == NULL
421 || strm->internal->next.memconfig == NULL
422 || strm->internal->next.memconfig(
423 strm->internal->next.coder,
432 lzma_memlimit_set(lzma_stream *strm, uint64_t new_memlimit)
438 if (strm == NULL || strm->internal == NULL
439 || strm->internal->next.memconfig == NULL)
447 return strm->internal->next.memconfig(strm->internal->next.coder,