leosongwei / mutagen

Automatically exported from code.google.com/p/mutagen
GNU General Public License v2.0
0 stars 0 forks source link

id3.RVA2 doesn't validate channel/gain/peak value #124

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
>>> id3.RVA2(desc="adsa", channel=1, gain=1, peak=2)._writeData()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/dist-packages/mutagen/id3.py", line 1060, in _writeData
    data.append(writer.write(self, getattr(self, writer.name)))
  File "/usr/lib/python2.7/dist-packages/mutagen/id3.py", line 893, in write
    return "\x10" + pack('>H', int(round(value * 32768)))
struct.error: 'H' format requires 0 <= number <= 65535

id3.RVA2(desc="adsa", channel=1, gain=65, peak=1)._writeData()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/dist-packages/mutagen/id3.py", line 1060, in _writeData
    data.append(writer.write(self, getattr(self, writer.name)))
  File "/usr/lib/python2.7/dist-packages/mutagen/id3.py", line 872, in write
    return pack('>h', int(round(value * 512)))
struct.error: 'h' format requires -32768 <= number <= 32767

id3.RVA2(desc="adsa", channel=100000000, gain=1, peak=1)._writeData()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/dist-packages/mutagen/id3.py", line 1060, in _writeData
    data.append(writer.write(self, getattr(self, writer.name)))
  File "/usr/lib/python2.7/dist-packages/mutagen/id3.py", line 671, in write
    def write(self, frame, value): return chr(value)
ValueError: chr() arg not in range(256)

Original issue reported on code.google.com by reiter.christoph@gmail.com on 17 Sep 2012 at 6:30

GoogleCodeExporter commented 9 years ago
This issue was closed by revision 1d0ab900dff5.

Original comment by reiter.christoph@gmail.com on 4 Sep 2013 at 3:49