fix problem when switching image file types
This commit is contained in:
parent
ad8877f83c
commit
484b829b90
@ -171,16 +171,20 @@ class GeneralSettingsController(SettingsFormController):
|
|||||||
),
|
),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
def remove_existing_image(self, image_id):
|
||||||
|
config = CoreConfig()
|
||||||
|
# remove all possible file extensions
|
||||||
|
for ext in ["png", "jpg", "webp"]:
|
||||||
|
try:
|
||||||
|
os.unlink("{}/{}.{}".format(config.get_data_directory(), image_id, ext))
|
||||||
|
except FileNotFoundError:
|
||||||
|
pass
|
||||||
|
|
||||||
def handle_image(self, data, image_id):
|
def handle_image(self, data, image_id):
|
||||||
if image_id in data:
|
if image_id in data:
|
||||||
config = CoreConfig()
|
config = CoreConfig()
|
||||||
if data[image_id] == "restore":
|
if data[image_id] == "restore":
|
||||||
# remove all possible file extensions
|
self.remove_existing_image(image_id)
|
||||||
for ext in ["png", "jpg", "webp"]:
|
|
||||||
try:
|
|
||||||
os.unlink("{}/{}.{}".format(config.get_data_directory(), image_id, ext))
|
|
||||||
except FileNotFoundError:
|
|
||||||
pass
|
|
||||||
elif data[image_id]:
|
elif data[image_id]:
|
||||||
if not data[image_id].startswith(image_id):
|
if not data[image_id].startswith(image_id):
|
||||||
logger.warning("invalid file name: %s", data[image_id])
|
logger.warning("invalid file name: %s", data[image_id])
|
||||||
@ -192,6 +196,7 @@ class GeneralSettingsController(SettingsFormController):
|
|||||||
if matches is None:
|
if matches is None:
|
||||||
logger.warning("could not determine file extension for %s", image_id)
|
logger.warning("could not determine file extension for %s", image_id)
|
||||||
else:
|
else:
|
||||||
|
self.remove_existing_image(image_id)
|
||||||
ext = matches.group(1)
|
ext = matches.group(1)
|
||||||
data_file = "{}/{}.{}".format(config.get_data_directory(), image_id, ext)
|
data_file = "{}/{}.{}".format(config.get_data_directory(), image_id, ext)
|
||||||
temporary_file = "{}/{}".format(config.get_temporary_directory(), data[image_id])
|
temporary_file = "{}/{}".format(config.get_temporary_directory(), data[image_id])
|
||||||
|
Loading…
Reference in New Issue
Block a user