File tree Expand file tree Collapse file tree 1 file changed +16
-1
lines changed
libraries/ESP8266WiFi/src/include Expand file tree Collapse file tree 1 file changed +16
-1
lines changed Original file line number Diff line number Diff line change @@ -27,6 +27,7 @@ extern "C" {
27
27
void esp_yield ();
28
28
void esp_schedule ();
29
29
#include " lwip/init.h" // LWIP_VERSION_
30
+ #include < assert.h>
30
31
}
31
32
32
33
@@ -143,6 +144,17 @@ class UdpContext
143
144
return _rx_buf->len - _rx_buf_offset;
144
145
}
145
146
147
+ size_t tell () const
148
+ {
149
+ return _rx_buf_offset;
150
+ }
151
+
152
+ void seek (const size_t pos)
153
+ {
154
+ assert (pos <= _rx_buf->len );
155
+ _rx_buf_offset = pos;
156
+ }
157
+
146
158
uint32_t getRemoteAddress ()
147
159
{
148
160
if (!_rx_buf)
@@ -203,7 +215,7 @@ class UdpContext
203
215
204
216
int read ()
205
217
{
206
- if (!_rx_buf || _rx_buf_offset = = _rx_buf->len )
218
+ if (!_rx_buf || _rx_buf_offset > = _rx_buf->len )
207
219
return -1 ;
208
220
209
221
char c = reinterpret_cast <char *>(_rx_buf->payload )[_rx_buf_offset];
@@ -361,6 +373,9 @@ class UdpContext
361
373
void _consume (size_t size)
362
374
{
363
375
_rx_buf_offset += size;
376
+ if (_rx_buf_offset > _rx_buf->len ) {
377
+ _rx_buf_offset = _rx_buf->len ;
378
+ }
364
379
}
365
380
366
381
void _recv (udp_pcb *upcb, pbuf *pb,
You can’t perform that action at this time.
0 commit comments