From 2f45612bb8a1e88e39c8aca9d19b4ef338afe1db Mon Sep 17 00:00:00 2001 From: ficeto Date: Wed, 13 May 2015 12:15:52 +0300 Subject: [PATCH] Revert "Edit SD Server example to use the new Write(Stream) method" This reverts commit 4ae8a6d631d532409dde5ea35af03bccbb62974f. --- .../examples/SDWebServer/SDWebServer.ino | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/libraries/ESP8266WebServer/examples/SDWebServer/SDWebServer.ino b/libraries/ESP8266WebServer/examples/SDWebServer/SDWebServer.ino index dcb3a9d6e..d9e230c77 100644 --- a/libraries/ESP8266WebServer/examples/SDWebServer/SDWebServer.ino +++ b/libraries/ESP8266WebServer/examples/SDWebServer/SDWebServer.ino @@ -111,10 +111,23 @@ bool loadFromSdCard(String path){ dataType = 0; path = 0; - if(client.write(dataFile) != dataFile.size()){ - DBG_OUTPUT_PORT.println("Sent less data than expected!"); - } + uint8_t obuf[WWW_BUF_SIZE]; + while (dataFile.available() > WWW_BUF_SIZE){ + dataFile.read(obuf, WWW_BUF_SIZE); + if(client.write(obuf, WWW_BUF_SIZE) != WWW_BUF_SIZE){ + DBG_OUTPUT_PORT.println("Sent less data than expected!"); + dataFile.close(); + return true; + } + } + uint16_t leftLen = dataFile.available(); + dataFile.read(obuf, leftLen); + if(client.write(obuf, leftLen) != leftLen){ + DBG_OUTPUT_PORT.println("Sent less data than expected!"); + dataFile.close(); + return true; + } dataFile.close(); client.stop(); return true;