Lens data in Exif shows incorrect information for manual focus Nikon lenses, fixes #4485

This commit is contained in:
heckflosse 2018-04-04 16:28:27 +02:00
parent 681361c091
commit 302a2f217e

View File

@ -23,7 +23,6 @@
#include <cstring> #include <cstring>
#include <sstream> #include <sstream>
#include <iomanip> #include <iomanip>
#include "rtexif.h" #include "rtexif.h"
using namespace std; using namespace std;
@ -543,7 +542,16 @@ public:
if (r != lenses.end()) { if (r != lenses.end()) {
if (r == lenses.begin() && EffectiveMaxApertureString != "") { // first entry is for unchipped lenses if (r == lenses.begin() && EffectiveMaxApertureString != "") { // first entry is for unchipped lenses
ld << "Lens = Unknown $FL$mm f/" << EffectiveMaxApertureString; Tag *FLTag = t->getParent()->getRoot()->findTag ("FocalLength");
ld << "Lens = MF ";
if(FLTag) {
ld << FLTag->valueToString () << "mm";
} else {
ld << "0mm";
}
ld << " f/" << EffectiveMaxApertureString;
} else { } else {
ld << "Lens = " << r->second; ld << "Lens = " << r->second;
} }