diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-10-02 12:22:33 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-10-02 12:22:33 +0100 |
| commit | a598ea5e130179d702da0a9305c54f71e594e8bb (patch) | |
| tree | ef780d734a59a64fd1166df0545f772c0ce731bd /src/main/java/org | |
| parent | 478405aaa3bb86bb85e8d77ba41ac6b4612cb3df (diff) | |
Ignore v:imagedata elements without relationship ID with warning
Diffstat (limited to 'src/main/java/org')
| -rw-r--r-- | src/main/java/org/zwobble/mammoth/internal/docx/BodyXmlReader.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/docx/BodyXmlReader.java b/src/main/java/org/zwobble/mammoth/internal/docx/BodyXmlReader.java index 5f93c4a..e4c5b5f 100644 --- a/src/main/java/org/zwobble/mammoth/internal/docx/BodyXmlReader.java +++ b/src/main/java/org/zwobble/mammoth/internal/docx/BodyXmlReader.java @@ -381,10 +381,13 @@ public class BodyXmlReader { } private ReadResult readImagedata(XmlElement element) { - Optional<String> title = element.getAttributeOrNone("o:title"); - String relationshipId = element.getAttribute("r:id"); - String imagePath = relationshipIdToDocxPath(relationshipId); - return readImage(imagePath, title, () -> DocxFiles.getInputStream(file, imagePath)); + return element.getAttributeOrNone("r:id") + .map(relationshipId -> { + Optional<String> title = element.getAttributeOrNone("o:title"); + String imagePath = relationshipIdToDocxPath(relationshipId); + return readImage(imagePath, title, () -> DocxFiles.getInputStream(file, imagePath)); + }) + .orElse(ReadResult.emptyWithWarning("A v:imagedata element without a relationship ID was ignored")); } private ReadResult readInline(XmlElement element) { |
