Fixes Issue 1826, names of non Canon-lenses on Canon-Cams are not correctly shown
This commit is contained in:
@@ -262,7 +262,7 @@ void ImageData::extractInfo () {
|
|||||||
lens = "Canon " + ldata;
|
lens = "Canon " + ldata;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if( !found ){
|
if( !found || lens.substr(lens.find(' ')).length() < 7 ){
|
||||||
lt = mnote->findTag("LensID");
|
lt = mnote->findTag("LensID");
|
||||||
if ( lt ) {
|
if ( lt ) {
|
||||||
std::string ldata = lt->valueToString ();
|
std::string ldata = lt->valueToString ();
|
||||||
@@ -289,7 +289,7 @@ void ImageData::extractInfo () {
|
|||||||
}
|
}
|
||||||
} else if (exif->getTag ("DNGLensInfo")) {
|
} else if (exif->getTag ("DNGLensInfo")) {
|
||||||
lens = exif->getTag ("DNGLensInfo")->valueToString ();
|
lens = exif->getTag ("DNGLensInfo")->valueToString ();
|
||||||
} if (exif->getTag ("LensModel")) {
|
} else if (exif->getTag ("LensModel")) {
|
||||||
lens = exif->getTag ("LensModel")->valueToString ();
|
lens = exif->getTag ("LensModel")->valueToString ();
|
||||||
} else if (exif->getTag ("LensInfo")) {
|
} else if (exif->getTag ("LensInfo")) {
|
||||||
lens = exif->getTag ("LensInfo")->valueToString ();
|
lens = exif->getTag ("LensInfo")->valueToString ();
|
||||||
|
@@ -556,6 +556,7 @@ class CALensInterpreter : public IntLensInterpreter< int > {
|
|||||||
choices.insert(p_t(169, "Sigma 18-200mm f/3.5-6.3 DC OS"));
|
choices.insert(p_t(169, "Sigma 18-200mm f/3.5-6.3 DC OS"));
|
||||||
choices.insert(p_t(169, "Sigma 15-30mm f/3.5-4.5 EX DG Aspherical"));
|
choices.insert(p_t(169, "Sigma 15-30mm f/3.5-4.5 EX DG Aspherical"));
|
||||||
choices.insert(p_t(169, "Sigma 18-50mm f/2.8 Macro"));
|
choices.insert(p_t(169, "Sigma 18-50mm f/2.8 Macro"));
|
||||||
|
choices.insert(p_t(169, "Sigma 30mm f/1.4 EX DC HSM"));
|
||||||
choices.insert(p_t(169, "Sigma 50mm f/1.4 EX DG HSM"));
|
choices.insert(p_t(169, "Sigma 50mm f/1.4 EX DG HSM"));
|
||||||
choices.insert(p_t(169, "Sigma 85mm f/1.4 EX DG HSM"));
|
choices.insert(p_t(169, "Sigma 85mm f/1.4 EX DG HSM"));
|
||||||
choices.insert(p_t(170, "Canon EF 200mm f/2.8L II"));
|
choices.insert(p_t(170, "Canon EF 200mm f/2.8L II"));
|
||||||
|
@@ -1926,6 +1926,9 @@ bool extractLensInfo(std::string &fullname,double &minFocal, double &maxFocal, d
|
|||||||
char *sp=pMM;
|
char *sp=pMM;
|
||||||
while( *sp != ' ' && sp > buffer )sp--;
|
while( *sp != ' ' && sp > buffer )sp--;
|
||||||
sscanf(sp+1,"%lf-%lf",&minFocal,&maxFocal);
|
sscanf(sp+1,"%lf-%lf",&minFocal,&maxFocal);
|
||||||
|
if(maxFocal==0.) {
|
||||||
|
maxFocal = minFocal;
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user