From cd7dd0ca8ba814e9652ddd24da114f8e7f7cb10c Mon Sep 17 00:00:00 2001 From: Andreas Huggel Date: Sun, 11 Mar 2012 01:48:45 +0000 Subject: [PATCH] #803: Fixed Rational/URational issues on Solaris. --- src/convert.cpp | 2 +- src/crwimage.cpp | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/convert.cpp b/src/convert.cpp index 85e16654..48ffeec8 100644 --- a/src/convert.cpp +++ b/src/convert.cpp @@ -591,7 +591,7 @@ namespace Exiv2 { double dhour = pos->toFloat(0); double dmin = pos->toFloat(1); // Hack: Need Value::toDouble - URational r = pos->toRational(2); + Rational r = pos->toRational(2); double dsec = static_cast(r.first)/r.second; if (!pos->value().ok()) { diff --git a/src/crwimage.cpp b/src/crwimage.cpp index c5ec84f0..0e181a2f 100644 --- a/src/crwimage.cpp +++ b/src/crwimage.cpp @@ -1035,7 +1035,8 @@ namespace Exiv2 { if (ifdId == canonSiId) { // Exif.Photo.FNumber float f = fnumber(canonEv(aperture)); - URational ur = floatToRationalCast(f); + Rational r = floatToRationalCast(f); + URational ur(r.first, r.second); URationalValue fn; fn.value_.push_back(ur); image.exifData().add(ExifKey("Exif.Photo.FNumber"), &fn);