exif-read-tool: Skip unparseable undefined tags

We've encountered a malformed user-comments value in an image from a
Canon EOS 5D Mark II.

2020/05/02 16:28:58 exifjpeg.ifd: [DEBUG]  Parsing IFD [IFD/Exif] (0) at offset (0102).
2020/05/02 16:28:58 exifjpeg.ifd: [DEBUG]  Current IFD tag-count: (33)
2020/05/02 16:28:58 main.main: [WARNING]  Skipping unparseable undefined tag: [IFD/Exif] (9286)
2020/05/02 16:28:58 exifjpeg.ifd: [DEBUG]  Descending to IFD [IFD/Exif/Iop].
2020/05/02 16:28:58 exifjpeg.ifd: [DEBUG]  Parsing IFD [IFD/Exif/Iop] (0) at offset (a164).

Fixes #33
for/master
Dustin Oprea 2020-05-02 16:29:43 -04:00
parent 76619923f4
commit 6aea10b45f
1 changed files with 4 additions and 1 deletions

View File

@ -130,7 +130,10 @@ func main() {
value, err := ite.Value()
if err != nil {
if log.Is(err, exifcommon.ErrUnhandledUndefinedTypedTag) == true {
mainLogger.Warningf(nil, "Non-standard undefined tag: [%s] (%04x)", ifdPath, tagId)
mainLogger.Warningf(nil, "Skipping non-standard undefined tag: [%s] (%04x)", ifdPath, tagId)
return nil
} else if err == exifundefined.ErrUnparseableValue {
mainLogger.Warningf(nil, "Skipping unparseable undefined tag: [%s] (%04x)", ifdPath, tagId)
return nil
}