mirror of
https://github.com/fergalmoran/picard.git
synced 2026-04-20 19:31:18 +00:00
PICARD-1490: Fix local cover art loading on Windows
This commit is contained in:
@@ -174,7 +174,7 @@ class CoverArt:
|
||||
# local files
|
||||
if coverartimage.url and coverartimage.url.scheme() == 'file':
|
||||
try:
|
||||
path = coverartimage.url.path()
|
||||
path = coverartimage.url.toLocalFile()
|
||||
with open(path, 'rb') as file:
|
||||
self._set_metadata(coverartimage, file.read())
|
||||
except IOError as ioexcept:
|
||||
|
||||
@@ -431,7 +431,7 @@ class LocalFileCoverArtImage(CoverArtImage):
|
||||
|
||||
def __init__(self, filepath, types=None, comment='',
|
||||
support_types=False, support_multi_types=False):
|
||||
url = 'file://' + filepath
|
||||
url = QUrl.fromLocalFile(filepath).toString()
|
||||
super().__init__(url=url, types=types, comment=comment)
|
||||
self.support_types = support_types
|
||||
self.support_multi_types = support_multi_types
|
||||
|
||||
@@ -100,3 +100,8 @@ class LocalFileCoverArtImageTest(PicardTestCase):
|
||||
image = LocalFileCoverArtImage(path, support_multi_types=True)
|
||||
self.assertFalse(image.support_types)
|
||||
self.assertTrue(image.support_multi_types)
|
||||
|
||||
def test_windows_path(self):
|
||||
path = 'C:\\Music\\somefile.mp3'
|
||||
image = LocalFileCoverArtImage(path)
|
||||
self.assertEqual(image.url.toLocalFile(), 'C:/Music/somefile.mp3')
|
||||
|
||||
Reference in New Issue
Block a user