libudfread | branch: master | Petri Hintukainen <[email protected]> | Tue Jan 24 23:00:47 2017 +0200| [830299499024f763f43ec4513bf25fa16f5c8aeb] | committer: Petri Hintukainen
Change _decode_file_ads() parameters > http://git.videolan.org/gitweb.cgi/libudfread.git/?a=commit;h=830299499024f763f43ec4513bf25fa16f5c8aeb --- src/ecma167.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/ecma167.c b/src/ecma167.c index ab7a5b9..e25fa3d 100644 --- a/src/ecma167.c +++ b/src/ecma167.c @@ -232,23 +232,24 @@ static void _decode_extended_ad(const uint8_t *buf, struct long_ad *ad) /* File Entry */ -static void _decode_file_ads(const uint8_t *p, int flags, uint16_t partition, struct file_entry *fe) +static void _decode_file_ads(const uint8_t *p, int flags, uint16_t partition, + struct long_ad *ad, unsigned num_ad) { uint32_t i; flags &= 7; - for (i = 0; i < fe->num_ad; i++) { + for (i = 0; i < num_ad; i++) { switch (flags) { case 0: - _decode_short_ad(p, partition, &fe->data.ad[i]); + _decode_short_ad(p, partition, &ad[i]); p += 8; break; case 1: - decode_long_ad(p, &fe->data.ad[i]); + decode_long_ad(p, &ad[i]); p += 16; break; case 2: - _decode_extended_ad(p, &fe->data.ad[i]); + _decode_extended_ad(p, &ad[i]); p += 20; break; } @@ -308,7 +309,7 @@ static struct file_entry *_decode_file_entry(const uint8_t *p, size_t size, fe->content_inline = 1; memcpy(fe->data.content, p + p_ad, l_ad); } else { - _decode_file_ads(p + p_ad, tag.flags, partition, fe); + _decode_file_ads(p + p_ad, tag.flags, partition, &fe->data.ad[0], num_ad); } return fe; _______________________________________________ libbluray-devel mailing list [email protected] https://mailman.videolan.org/listinfo/libbluray-devel
