| @@ 737-739 (lines=3) @@ | ||
| 734 | if ($atom_structure['number_entries'] > 0x00FFFFFF) { |
|
| 735 | $this->warning('"stsd" atom contains improbably large number_entries (0x'.getid3_lib::PrintHexBytes(substr($atom_data, 4, 4), true, false).' = '.$atom_structure['number_entries'].'), probably in error. Ignoring upper byte and interpreting this as 0x'.getid3_lib::PrintHexBytes(substr($atom_data, 5, 3), true, false).' = '.($atom_structure['number_entries'] & 0x00FFFFFF)); |
|
| 736 | $atom_structure['number_entries'] = ($atom_structure['number_entries'] & 0x00FFFFFF); |
|
| 737 | } else { |
|
| 738 | $this->warning('"stsd" atom contains improbably large number_entries (0x'.getid3_lib::PrintHexBytes(substr($atom_data, 4, 4), true, false).' = '.$atom_structure['number_entries'].'), probably in error. Please report this to [email protected] referencing bug report #111'); |
|
| 739 | } |
|
| 740 | } |
|
| 741 | ||
| 742 | $stsdEntriesDataOffset = 8; |
|
| @@ 27-30 (lines=4) @@ | ||
| 24 | $this->fseek($info['avdataoffset']); |
|
| 25 | $DSSheader = $this->fread(1540); |
|
| 26 | ||
| 27 | if (!preg_match('#^[\\x02-\\x06]ds[s2]#', $DSSheader)) { |
|
| 28 | $this->error('Expecting "[02-06] 64 73 [73|32]" at offset '.$info['avdataoffset'].', found "'.getid3_lib::PrintHexBytes(substr($DSSheader, 0, 4)).'"'); |
|
| 29 | return false; |
|
| 30 | } |
|
| 31 | ||
| 32 | // some structure information taken from http://cpansearch.perl.org/src/RGIBSON/Audio-DSS-0.02/lib/Audio/DSS.pm |
|
| 33 | $info['encoding'] = 'ISO-8859-1'; // not certain, but assumed |
|