Blob Blame History Raw
diff -up cxxtools-2.2.1/include/cxxtools/serializationinfo.h.than cxxtools-2.2.1/include/cxxtools/serializationinfo.h
--- cxxtools-2.2.1/include/cxxtools/serializationinfo.h.than	2016-04-29 17:56:47.199954811 +0200
+++ cxxtools-2.2.1/include/cxxtools/serializationinfo.h	2016-04-29 17:59:22.002914734 +0200
@@ -181,9 +181,9 @@ class CXXTOOLS_API SerializationInfo
             { value = static_cast<unsigned long long>(_getUInt("unsigned long long", std::numeric_limits<unsigned long long>::max())); }
 #endif
         void getValue(float& value) const
-            { value = static_cast<float>(_getFloat("float", std::numeric_limits<float>::max())); }
+            { value = static_cast<float>(_getFloat("float", static_cast<long double>(std::numeric_limits<float>::max())*1.0000000000001)); }
         void getValue(double& value) const
-            { value = static_cast<double>(_getFloat("double", std::numeric_limits<double>::max())); }
+            { value = static_cast<double>(_getFloat("double", static_cast<long double>(std::numeric_limits<double>::max())*1.0000000000001)); }
         void getValue(long double& value) const
             { value = static_cast<long double>(_getFloat("long double", std::numeric_limits<long double>::max())); }