Byte-endian fixes for wma parsing

This commit is contained in:
Ron Pedde 2006-10-16 03:19:10 +00:00
parent 4e786208ed
commit d89220fb5e

View File

@ -353,6 +353,7 @@ int wma_parse_header_extension(int fd, int size, MP3FILE *pmp3) {
if(r_read(fd,&he,sizeof(he)) != sizeof(he)) if(r_read(fd,&he,sizeof(he)) != sizeof(he))
return FALSE; return FALSE;
he.data_size = wma_convert_int((unsigned char *)&he.data_size);
bytes_left = he.data_size; bytes_left = he.data_size;
DPRINTF(E_DBG,L_SCAN,"Found header ext of %ld (%ld) bytes\n",he.data_size,size); DPRINTF(E_DBG,L_SCAN,"Found header ext of %ld (%ld) bytes\n",he.data_size,size);
@ -363,6 +364,7 @@ int wma_parse_header_extension(int fd, int size, MP3FILE *pmp3) {
if(r_read(fd,&sh,sizeof(sh)) != sizeof(sh)) if(r_read(fd,&sh,sizeof(sh)) != sizeof(sh))
return FALSE; return FALSE;
sh.size = wma_convert_ll((unsigned char *)&sh.size);
pguid = wma_find_guid(sh.objectid); pguid = wma_find_guid(sh.objectid);
if(!pguid) { if(!pguid) {
DPRINTF(E_DBG,L_SCAN," Unknown ext subheader: %02hhx%02hhx" DPRINTF(E_DBG,L_SCAN," Unknown ext subheader: %02hhx%02hhx"