diff options
Diffstat (limited to 'libxsde/xsde/cxx/serializer/validating/decimal.cxx')
-rw-r--r-- | libxsde/xsde/cxx/serializer/validating/decimal.cxx | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/libxsde/xsde/cxx/serializer/validating/decimal.cxx b/libxsde/xsde/cxx/serializer/validating/decimal.cxx index d4408af..a01cbc2 100644 --- a/libxsde/xsde/cxx/serializer/validating/decimal.cxx +++ b/libxsde/xsde/cxx/serializer/validating/decimal.cxx @@ -45,12 +45,14 @@ namespace xsde // char str[128]; + unsigned int p (f.fraction_digits_set_ + ? f.fraction_digits_ + : precision_); + #ifdef XSDE_SNPRINTF - int n = snprintf (str, 128, "%.*f", - static_cast<int> (precision_), value_); + int n = snprintf (str, 128, "%.*f", static_cast<int> (p), value_); #else - int n = sprintf (str, "%.*f", - static_cast<int> (precision_), value_); + int n = sprintf (str, "%.*f", static_cast<int> (p), value_); #endif if (n > 0 && n < 128) { |