Added checks for snapshot

This commit is contained in:
Rene Zeldenthuis
2022-10-18 09:46:36 +02:00
parent 4acee4a82c
commit 68497a6c2c

View File

@@ -150,13 +150,19 @@ void handle_snapshot()
}
cam.run();
if (cam.getSize() == 0 || cam.getfb() == nullptr)
{
web_server.send(404, "text/plain", "Unable to obtain framebuffer");
return;
}
auto fb_len = cam.getSize();
auto fb = (const char*)memcpy(new uint8_t[fb_len], cam.getfb(), fb_len);
auto fb = (const char *)memcpy(new uint8_t[fb_len], cam.getfb(), fb_len);
web_server.sendHeader("Cache-Control", "no-cache, no-store, must-revalidate");
web_server.setContentLength(fb_len);
web_server.send(200, "image/jpeg", "");
web_server.sendContent(fb, fb_len);
delete []fb;
delete[] fb;
}
void on_config_saved()
@@ -208,7 +214,7 @@ void on_connected()
log_v("on_connected");
// Turn LED off (has inverted logic GPIO33)
digitalWrite(LED_BUILTIN, true);
// Start (OTA) Over The Air programming when connected
// Start (OTA) Over The Air programming when connected
ArduinoOTA.begin();
// Start the RTSP Server
start_rtsp_server();