0

262144 のチャンク サイズを使用すると、zlib deflate から次のエラーが発生します。

アクセス違反書き込み場所 0x005AF000。

エラーは _tr_tally_dist で発生します

dist の値は 26885、last_lit = 35312 です。

何か案は?

void _tr_tally_dist (s, distance, length, flush)
deflate_state *s;
unsigned int distance;
unsigned int length;
int flush;
{ 
    unsigned char  len = length;
    unsigned short dist = distance;
    flush = (s->last_lit >= s->lit_bufsize - 1);
    **s->d_buf[s->last_lit] = dist;**
    s->l_buf[s->last_lit++] = len;
    dist--;
    s->dyn_ltree[_length_code[len] + LITERALS + 1].Freq++;
    s->dyn_dtree[d_code (dist)].Freq++;

}
4

2 に答える 2