[TrackerIcon] Fixed old-large icon removal
After downloading and resizing the new icon, we try to remove the downloaded file, which is larger, but it fails because it tries to do so when the file is still open, and therefor locked. On close of the UI, we got `PermissionError` exceptions for each new icon.
This commit is contained in:
parent
517b2c653b
commit
fca08cf583
|
@ -479,14 +479,17 @@ class TrackerIcons(Component):
|
|||
# Requires Pillow(PIL) to resize.
|
||||
if icon and Image:
|
||||
filename = icon.get_filename()
|
||||
remove_old = False
|
||||
with Image.open(filename) as img:
|
||||
if img.size > (16, 16):
|
||||
new_filename = filename.rpartition('.')[0] + '.png'
|
||||
img = img.resize((16, 16), Image.ANTIALIAS)
|
||||
img.save(new_filename)
|
||||
if new_filename != filename:
|
||||
os.remove(filename)
|
||||
icon = TrackerIcon(new_filename)
|
||||
remove_old = True
|
||||
if remove_old:
|
||||
os.remove(filename)
|
||||
icon = TrackerIcon(new_filename)
|
||||
return icon
|
||||
|
||||
def store_icon(self, icon, host):
|
||||
|
|
Loading…
Reference in New Issue