strconv: fix round up corner case
Comment described the correct condition
but the code did not implement it.
Fixes #2625.
R=remyoudompheng
CC=golang-dev
https://golang.org/cl/5530082
diff --git a/src/pkg/strconv/ftoa.go b/src/pkg/strconv/ftoa.go
index f4434fd..b1d4b32 100644
--- a/src/pkg/strconv/ftoa.go
+++ b/src/pkg/strconv/ftoa.go
@@ -241,7 +241,7 @@
// Okay to round up if upper has a different digit and
// either upper is inclusive or upper is bigger than the result of rounding up.
- okup := m != u && (inclusive || i+1 < upper.nd)
+ okup := m != u && (inclusive || m+1 < u || i+1 < upper.nd)
// If it's okay to do either, then round to the nearest one.
// If it's okay to do only one, do it.