This is an automated email from the ASF dual-hosted git repository.

tallison pushed a commit to branch branch_1x
in repository https://gitbox.apache.org/repos/asf/tika.git

commit 4eb73d02888fa36d00305f47d3c70f8d9f3d9b48
Author: tallison <[email protected]>
AuthorDate: Mon Dec 2 20:34:51 2019 -0500

    TIKA-2630 -- add defensive null check and fix "if (...width)" to "if 
(...height)"
---
 .../tika/parser/image/ImageMetadataExtractor.java       | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git 
a/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
 
b/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
index 9fec322..912c0f1 100644
--- 
a/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
+++ 
b/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
@@ -504,12 +504,19 @@ public class ImageMetadataExtractor {
 
             // For Compressed Images read from ExifSubIFDDirectory
             if 
(directory.containsTag(ExifSubIFDDirectory.TAG_EXIF_IMAGE_WIDTH)) {
-                metadata.set(Metadata.IMAGE_WIDTH,
-                        
trimPixels(directory.getDescription(ExifSubIFDDirectory.TAG_EXIF_IMAGE_WIDTH)));
+                String width = 
directory.getDescription(ExifSubIFDDirectory.TAG_EXIF_IMAGE_WIDTH);
+                //check for null because this could overwrite earlier set 
width if the value is null
+                if (width != null) {
+                    metadata.set(Metadata.IMAGE_WIDTH,
+                            trimPixels(width));
+                }
             }
-            if 
(directory.containsTag(ExifSubIFDDirectory.TAG_EXIF_IMAGE_WIDTH)) {
-                metadata.set(Metadata.IMAGE_LENGTH,
-                        
trimPixels(directory.getDescription(ExifSubIFDDirectory.TAG_EXIF_IMAGE_HEIGHT)));
+
+            if 
(directory.containsTag(ExifSubIFDDirectory.TAG_EXIF_IMAGE_HEIGHT)) {
+                String height = 
directory.getDescription(ExifSubIFDDirectory.TAG_EXIF_IMAGE_HEIGHT);
+                if (height != null) {
+                    metadata.set(Metadata.IMAGE_LENGTH, trimPixels(height));
+                }
             }
 
         }

Reply via email to