]> granicus.if.org Git - transmission/commitdiff
(trunk libT) prevent potential rounding errors when sending floating-point numbers...
authorCharles Kerr <charles@transmissionbt.com>
Mon, 3 Aug 2009 23:18:02 +0000 (23:18 +0000)
committerCharles Kerr <charles@transmissionbt.com>
Mon, 3 Aug 2009 23:18:02 +0000 (23:18 +0000)
libtransmission/bencode.c

index 37372fe1de224692b362f927d7982cc51771918f..9196c91d108522104564a4376dc3a6920840ce7a 100644 (file)
@@ -1301,7 +1301,7 @@ jsonRealFunc( const tr_benc * val, void * vdata )
         /* json requires a '.' decimal point regardless of locale */
         tr_strlcpy( locale, setlocale( LC_NUMERIC, NULL ), sizeof( locale ) );
         setlocale( LC_NUMERIC, "POSIX" );
-        evbuffer_add_printf( data->out, "%.4f", val->val.d );
+        evbuffer_add_printf( data->out, "%.4f", tr_truncd( val->val.d, 4 ) );
         setlocale( LC_NUMERIC, locale );
     }