Eventually raise CoverArtImageIOError when getting CoverArtImage.data

This commit is contained in:
Laurent Monin
2014-05-29 09:13:26 +02:00
parent 9ab5d72594
commit f544a4f44f
2 changed files with 10 additions and 5 deletions

View File

@@ -304,10 +304,13 @@ class CoverArtImage:
@property
def data(self):
"""Reads the data from the temporary file created for this image. May
raise IOErrors or OSErrors.
"""Reads the data from the temporary file created for this image.
May raise CoverArtImageIOError
"""
return self.datahash.data
try:
return self.datahash.data
except (OSError, IOError) as e:
raise CoverArtImageIOError(e)
@property
def tempfile_filename(self):

View File

@@ -23,6 +23,7 @@ import traceback
from PyQt4 import QtGui, QtCore
from picard import log
from picard.coverartarchive import translate_caa_type
from picard.coverartimage import CoverArtImageIOError
from picard.util import format_time, encode_filename, bytes2human
from picard.ui import PicardDialog
from picard.ui.ui_infodialog import Ui_InfoDialog
@@ -57,11 +58,12 @@ class InfoDialog(PicardDialog):
if image.thumbnail:
try:
data = image.thumbnail.data
except:
except CoverArtImageIOError as e:
log.warning(unicode(e))
pass
else:
data = image.data
except (OSError, IOError) as e:
except CoverArtImageIOError:
log.error(traceback.format_exc())
continue
item = QtGui.QListWidgetItem()