diff --git a/src/pkg/fmt/scan.go b/src/pkg/fmt/scan.go index 2aade027bb..dd8548ceb7 100644 --- a/src/pkg/fmt/scan.go +++ b/src/pkg/fmt/scan.go @@ -226,20 +226,12 @@ func (s *ss) mustReadRune() (rune int) { } func (s *ss) UnreadRune() os.Error { - // Don't use strings.Reader.UnreadRune for now - appears to cause a problem. - // TODO(r, gri): Fix this and remove code between --- lines! - // --- - if _, ok := s.rr.(*strings.Reader); ok { - s.peekRune = s.prevRune - s.count-- - return nil - } - // --- if u, ok := s.rr.(runeUnreader); ok { u.UnreadRune() } else { s.peekRune = s.prevRune } + s.prevRune = -1 s.count-- return nil }