From 6049d3d2bc3fbf42d6b4bd4e93c17f20e2029abc Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sun, 2 Oct 2016 12:27:24 +0100 Subject: Ignore v:imagedata elements without relationship ID with warning --- mammoth/docx/body_xml.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'mammoth') diff --git a/mammoth/docx/body_xml.py b/mammoth/docx/body_xml.py index fbf813c..b5e2997 100644 --- a/mammoth/docx/body_xml.py +++ b/mammoth/docx/body_xml.py @@ -329,8 +329,13 @@ def _create_reader(numbering, content_types, relationships, styles, docx_file, f return image_path, open_image def read_imagedata(element): - title = element.attributes.get("o:title") - return _read_image(lambda: _find_embedded_image(element.attributes["r:id"]), title) + relationship_id = element.attributes.get("r:id") + if relationship_id is None: + warning = results.warning("A v:imagedata element without a relationship ID was ignored") + return _empty_result_with_message(warning) + else: + title = element.attributes.get("o:title") + return _read_image(lambda: _find_embedded_image(relationship_id), title) def note_reference_reader(note_type): def note_reference(element): -- cgit v1.2.3