From b5094d9d9ffcd0f03e2819b3e259484de0a8a13c Mon Sep 17 00:00:00 2001 From: heckflosse Date: Tue, 8 Nov 2016 14:06:11 +0100 Subject: [PATCH 1/2] Pentax: ISO > 65535 was reported as 65535 in info dialog --- rtengine/imagedata.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/rtengine/imagedata.cc b/rtengine/imagedata.cc index d3400a8d0..dc837117d 100644 --- a/rtengine/imagedata.cc +++ b/rtengine/imagedata.cc @@ -440,6 +440,16 @@ void ImageData::extractInfo () } } } else if (mnote && (!make.compare (0, 6, "PENTAX") || (!make.compare (0, 5, "RICOH") && !model.compare (0, 6, "PENTAX")))) { + // ISO at max value supported, check manufacturer specific + if (iso_speed == 65535 || iso_speed == 0) { + rtexif::Tag* baseIsoTag = mnote->getTag("ISO"); + if (baseIsoTag) { + std::string isoData = baseIsoTag->valueToString(); + if (isoData.size() > 1) { + iso_speed = atoi(isoData.c_str()); + } + } + } if (mnote->getTag ("LensType")) { lens = mnote->getTag ("LensType")->valueToString (); } From 59e999fbf548ad4ca3695b25804603ba22a070f2 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Tue, 8 Nov 2016 15:31:48 +0100 Subject: [PATCH 2/2] Used stoi instead of atoi --- rtengine/imagedata.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rtengine/imagedata.cc b/rtengine/imagedata.cc index dc837117d..f8e257ddc 100644 --- a/rtengine/imagedata.cc +++ b/rtengine/imagedata.cc @@ -446,7 +446,7 @@ void ImageData::extractInfo () if (baseIsoTag) { std::string isoData = baseIsoTag->valueToString(); if (isoData.size() > 1) { - iso_speed = atoi(isoData.c_str()); + iso_speed = stoi(isoData); } } }