diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c index 80e8d084df92db7437595505c1c915f521f44e15..fe93546edd6dafb50f3b3c7d8304d2636369ca20 100644 --- a/libavformat/aviobuf.c +++ b/libavformat/aviobuf.c @@ -54,6 +54,10 @@ int init_put_byte(ByteIOContext *s, s->is_streamed = 0; s->max_packet_size = 0; s->update_checksum= NULL; + if(!read_packet && !write_flag){ + s->pos = buffer_size; + s->buf_end = s->buffer + buffer_size; + } return 0; } diff --git a/libavformat/mov.c b/libavformat/mov.c index f02f8c89efc0bd44b7002458ffd06ae443805150..0f3720a01c68a49f145ea9e3600d882112eb241b 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -1346,11 +1346,6 @@ static int mov_read_wide(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) #ifdef CONFIG_ZLIB -static int null_read_packet(void *opaque, uint8_t *buf, int buf_size) -{ - return buf_size; -} - static int mov_read_cmov(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) { ByteIOContext ctx; @@ -1383,7 +1378,7 @@ static int mov_read_cmov(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) get_buffer(pb, cmov_data, cmov_len); if(uncompress (moov_data, (uLongf *) &moov_len, (const Bytef *)cmov_data, cmov_len) != Z_OK) return -1; - if(init_put_byte(&ctx, moov_data, moov_len, 0, NULL, null_read_packet, NULL, NULL) != 0) + if(init_put_byte(&ctx, moov_data, moov_len, 0, NULL, NULL, NULL, NULL) != 0) return -1; atom.type = MKTAG( 'm', 'o', 'o', 'v' ); atom.offset = 0;