From 45f65846dbae9ee2056e7bcdbe4d80edf5b29e18 Mon Sep 17 00:00:00 2001 From: Quentin Peter Date: Fri, 1 Jul 2016 17:41:18 +0100 Subject: [PATCH] Correct ValueError When when info.length is 1 and len(values) >1, the code used to throw: ValueError: too many values to unpack (expected 1) For example: tag IMAGEJ_META_DATA_BYTE_COUNTS (50838) can sometimes have two values (I have .tif files with metadata split between UTF8 and UTF16 => one byte count for each) --- PIL/TiffImagePlugin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PIL/TiffImagePlugin.py b/PIL/TiffImagePlugin.py index 524d42a34..abac7f427 100644 --- a/PIL/TiffImagePlugin.py +++ b/PIL/TiffImagePlugin.py @@ -550,7 +550,7 @@ class ImageFileDirectory_v2(collections.MutableMapping): dest = self._tags_v1 if legacy_api else self._tags_v2 - if info.length == 1: + if info.length > 0 and len(values) == 1: if legacy_api and self.tagtype[tag] in [5, 10]: values = values, dest[tag], = values