File tree 3 files changed +8
-3
lines changed
3 files changed +8
-3
lines changed Original file line number Diff line number Diff line change @@ -124,7 +124,7 @@ class HardwareSerial : public Stream
124
124
virtual int available (void );
125
125
virtual int peek (void );
126
126
virtual int read (void );
127
- int availableForWrite (void );
127
+ virtual int availableForWrite (void );
128
128
virtual void flush (void );
129
129
virtual size_t write (uint8_t );
130
130
inline size_t write (unsigned long n) { return write ((uint8_t )n); }
Original file line number Diff line number Diff line change 22
22
23
23
#include < inttypes.h>
24
24
#include < stdio.h> // for size_t
25
+ #include < limits.h> // for INT_MAX
25
26
26
27
#include " WString.h"
27
28
#include " Printable.h"
@@ -57,7 +58,11 @@ class Print
57
58
size_t write (const char *buffer, size_t size) {
58
59
return write ((const uint8_t *)buffer, size);
59
60
}
60
-
61
+
62
+ // default to zero, meaning "a single write may block"
63
+ // should be overriden by subclasses with buffering
64
+ virtual int availableForWrite () { return 0 ; }
65
+
61
66
size_t print (const __FlashStringHelper *);
62
67
size_t print (const String &);
63
68
size_t print (const char []);
Original file line number Diff line number Diff line change @@ -98,7 +98,7 @@ class Serial_ : public Stream
98
98
virtual int available (void );
99
99
virtual int peek (void );
100
100
virtual int read (void );
101
- int availableForWrite (void );
101
+ virtual int availableForWrite (void );
102
102
virtual void flush (void );
103
103
virtual size_t write (uint8_t );
104
104
virtual size_t write (const uint8_t *, size_t );
You can’t perform that action at this time.
0 commit comments