Skip to content

Commit 21a16d0

Browse files
authored
Merge pull request #164 from ali-sajjad-rizavi/generic-writer-fail-unsupported-extension
Don't pass silently when trying to write unsupported extension
2 parents e004041 + c0fd969 commit 21a16d0

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
@@ -1740,14 +1740,19 @@ def static_write(pattern, filename, settings=None):
17401740
"""Writes file, assuming type by extension"""
17411741
extension = EmbPattern.get_extension_by_filename(filename)
17421742
extension = extension.lower()
1743+
supported_extensions = [file_type["extension"] for file_type in EmbPattern.supported_formats()]
17431744

1744-
for file_type in EmbPattern.supported_formats():
1745-
if file_type["extension"] != extension:
1746-
continue
1747-
writer = file_type.get("writer", None)
1748-
if writer is None:
1749-
continue
1745+
if extension not in supported_extensions:
1746+
raise Exception(f"Conversion to file type '{extension}' is not supported")
1747+
1748+
ext_to_file_type_lookup = {file_type["extension"]: file_type for file_type in EmbPattern.supported_formats()}
1749+
writer = ext_to_file_type_lookup[extension].get("writer")
1750+
1751+
if writer:
17501752
EmbPattern.write_embroidery(writer, pattern, filename, settings)
1753+
else:
1754+
# TODO: I don't think we should pass silently!
1755+
pass
17511756

17521757
@staticmethod
17531758
def is_str(obj):

0 commit comments

Comments
 (0)