changing available() to return an int (because the Ethernet Client class or another stream might need more than 255 bytes).

This commit is contained in:
David A. Mellis 2010-08-02 22:23:48 +00:00
parent 258a286e8c
commit 94045e292a
3 changed files with 3 additions and 3 deletions

View File

@ -173,7 +173,7 @@ void HardwareSerial::end()
cbi(*_ucsrb, _rxcie); cbi(*_ucsrb, _rxcie);
} }
uint8_t HardwareSerial::available(void) int HardwareSerial::available(void)
{ {
return (RX_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) % RX_BUFFER_SIZE; return (RX_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) % RX_BUFFER_SIZE;
} }

View File

@ -48,7 +48,7 @@ class HardwareSerial : public Stream
uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x); uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x);
void begin(long); void begin(long);
void end(); void end();
virtual uint8_t available(void); virtual int available(void);
virtual int peek(void); virtual int peek(void);
virtual int read(void); virtual int read(void);
virtual void flush(void); virtual void flush(void);

View File

@ -26,7 +26,7 @@
class Stream : public Print class Stream : public Print
{ {
public: public:
virtual uint8_t available() = 0; virtual int available() = 0;
virtual int peek() = 0; virtual int peek() = 0;
virtual int read() = 0; virtual int read() = 0;
virtual void flush() = 0; virtual void flush() = 0;