|
|
|
@ -44,6 +44,7 @@
|
|
|
|
|
#include <sstream>
|
|
|
|
|
#include <memory>
|
|
|
|
|
#include <cstring>
|
|
|
|
|
#include <climits>
|
|
|
|
|
|
|
|
|
|
// *****************************************************************************
|
|
|
|
|
// namespace extensions
|
|
|
|
@ -1662,7 +1663,7 @@ namespace Exiv2 {
|
|
|
|
|
template<>
|
|
|
|
|
inline long ValueType<Rational>::toLong(long n) const
|
|
|
|
|
{
|
|
|
|
|
ok_ = (value_[n].second != 0);
|
|
|
|
|
ok_ = (value_[n].second != 0 && INT_MIN < value_[n].first && value_[n].first < INT_MAX );
|
|
|
|
|
if (!ok_) return 0;
|
|
|
|
|
return value_[n].first / value_[n].second;
|
|
|
|
|
}
|
|
|
|
|