return if called from interrupt

This commit is contained in:
Me No Dev 2016-01-26 17:52:49 +02:00
parent 154ac0060f
commit 8fed4c42f3
1 changed files with 4 additions and 6 deletions

View File

@ -2,7 +2,6 @@
#include "AsyncWebServerResponseImpl.h" #include "AsyncWebServerResponseImpl.h"
#include "cbuf.h" #include "cbuf.h"
/* /*
* Abstract Response * Abstract Response
* */ * */
@ -358,16 +357,15 @@ size_t AsyncResponseStream::_fillBuffer(uint8_t *buf, size_t maxLen){
} }
size_t AsyncResponseStream::write(const uint8_t *data, size_t len){ size_t AsyncResponseStream::write(const uint8_t *data, size_t len){
if(_finished()) if(_finished() || (_content->room() == 0 && ETS_INTR_WITHINISR()))
return 0; return 0;
//while(_content->room() < len) delay(1); if(len > _content->getSize())
len = _content->getSize();
while(_content->room() < len) delay(0);
return _content->write((const char*)data, len); return _content->write((const char*)data, len);
} }
size_t AsyncResponseStream::write(uint8_t data){ size_t AsyncResponseStream::write(uint8_t data){
if(_finished())
return 0;
//while(_content->room() == 0) delay(1);
return write(&data, 1); return write(&data, 1);
} }