Skip to content

Commit c0fd969

Browse files
Don't pass silently when trying to write unsupported extension
1 parent 68057a0 commit c0fd969

File tree

1 file changed

+11
-6
lines changed

1 file changed

+11
-6
lines changed

pyembroidery/EmbPattern.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1723,14 +1723,19 @@ def static_write(pattern, filename, settings=None):
17231723
"""Writes file, assuming type by extension"""
17241724
extension = EmbPattern.get_extension_by_filename(filename)
17251725
extension = extension.lower()
1726+
supported_extensions = [file_type["extension"] for file_type in EmbPattern.supported_formats()]
17261727

1727-
for file_type in EmbPattern.supported_formats():
1728-
if file_type["extension"] != extension:
1729-
continue
1730-
writer = file_type.get("writer", None)
1731-
if writer is None:
1732-
continue
1728+
if extension not in supported_extensions:
1729+
raise Exception(f"Conversion to file type '{extension}' is not supported")
1730+
1731+
ext_to_file_type_lookup = {file_type["extension"]: file_type for file_type in EmbPattern.supported_formats()}
1732+
writer = ext_to_file_type_lookup[extension].get("writer")
1733+
1734+
if writer:
17331735
EmbPattern.write_embroidery(writer, pattern, filename, settings)
1736+
else:
1737+
# TODO: I don't think we should pass silently!
1738+
pass
17341739

17351740
@staticmethod
17361741
def is_str(obj):

0 commit comments

Comments
 (0)