From ed7007c01076038f48033ffe535f2abecb728846 Mon Sep 17 00:00:00 2001 From: Matthijs Kooijman Date: Fri, 24 Oct 2014 15:26:38 +0200 Subject: [PATCH] Move the flush method from Stream to Print This method originally flushed pending input bytes, which makes sense in Stream. At some point it was changed to flush output bytes instead, but it was never moved to Print to reflect this. Since Stream inherits from Print, this should not really affect any users of the Stream or Print classes. However to prevent problems with existing implementations of the Print class that do not provide a flush() implementation, a default implementation is provided. We should probably remove this at some point in the future, though. --- hardware/arduino/avr/cores/arduino/Print.h | 2 ++ hardware/arduino/avr/cores/arduino/Stream.h | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/hardware/arduino/avr/cores/arduino/Print.h b/hardware/arduino/avr/cores/arduino/Print.h index 4d8a2f58c..2b5aafd72 100644 --- a/hardware/arduino/avr/cores/arduino/Print.h +++ b/hardware/arduino/avr/cores/arduino/Print.h @@ -87,6 +87,8 @@ class Print size_t println(double, int = 2); size_t println(const Printable&); size_t println(void); + + virtual void flush() { /* Empty implementation for backward compatibility */ } }; #endif diff --git a/hardware/arduino/avr/cores/arduino/Stream.h b/hardware/arduino/avr/cores/arduino/Stream.h index e4fd4338c..78a1c0716 100644 --- a/hardware/arduino/avr/cores/arduino/Stream.h +++ b/hardware/arduino/avr/cores/arduino/Stream.h @@ -59,7 +59,6 @@ class Stream : public Print virtual int available() = 0; virtual int read() = 0; virtual int peek() = 0; - virtual void flush() = 0; Stream() {_timeout=1000;}