Lines Matching refs:coder

64 	lzma_index_coder *coder = coder_ptr;
71 switch (coder->sequence) {
85 coder->sequence = SEQ_COUNT;
89 ret = lzma_vli_decode(&coder->count, &coder->pos,
94 coder->pos = 0;
95 coder->sequence = SEQ_MEMUSAGE;
100 if (lzma_index_memusage(1, coder->count) > coder->memlimit) {
107 lzma_index_prealloc(coder->index, coder->count);
110 coder->sequence = coder->count == 0
116 lzma_vli *size = coder->sequence == SEQ_UNPADDED
117 ? &coder->unpadded_size
118 : &coder->uncompressed_size;
120 ret = lzma_vli_decode(size, &coder->pos,
126 coder->pos = 0;
128 if (coder->sequence == SEQ_UNPADDED) {
131 if (coder->unpadded_size < UNPADDED_SIZE_MIN
132 || coder->unpadded_size
136 coder->sequence = SEQ_UNCOMPRESSED;
140 coder->index, allocator,
141 coder->unpadded_size,
142 coder->uncompressed_size));
145 coder->sequence = --coder->count == 0
154 coder->pos = lzma_index_padding_size(coder->index);
155 coder->sequence = SEQ_PADDING;
160 if (coder->pos > 0) {
161 --coder->pos;
169 coder->crc32 = lzma_crc32(in + in_start,
170 *in_pos - in_start, coder->crc32);
172 coder->sequence = SEQ_CRC32;
181 if (((coder->crc32 >> (coder->pos * 8)) & 0xFF)
188 } while (++coder->pos < 4);
192 *coder->index_ptr = coder->index;
195 coder->index = NULL;
212 coder->crc32 = lzma_crc32(in + in_start,
213 in_used, coder->crc32);
223 lzma_index_coder *coder = coder_ptr;
224 lzma_index_end(coder->index, allocator);
225 lzma_free(coder, allocator);
234 lzma_index_coder *coder = coder_ptr;
236 *memusage = lzma_index_memusage(1, coder->count);
237 *old_memlimit = coder->memlimit;
243 coder->memlimit = new_memlimit;
251 index_decoder_reset(lzma_index_coder *coder, const lzma_allocator *allocator,
258 coder->index_ptr = i;
262 coder->index = lzma_index_init(allocator);
263 if (coder->index == NULL)
267 coder->sequence = SEQ_INDICATOR;
268 coder->memlimit = my_max(1, memlimit);
269 coder->count = 0; // Needs to be initialized due to _memconfig().
270 coder->pos = 0;
271 coder->crc32 = 0;
286 lzma_index_coder *coder = next->coder;
287 if (coder == NULL) {
288 coder = lzma_alloc(sizeof(lzma_index_coder), allocator);
289 if (coder == NULL)
292 next->coder = coder;
296 coder->index = NULL;
298 lzma_index_end(coder->index, allocator);
301 return index_decoder_reset(coder, allocator, i, memlimit);
339 lzma_index_coder coder;
340 return_if_error(index_decoder_reset(&coder, allocator, i, *memlimit));
347 lzma_ret ret = index_decode(&coder, allocator, in, in_pos, in_size,
355 lzma_index_end(coder.index, allocator);
367 *memlimit = lzma_index_memusage(1, coder.count);