summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/screendump.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/firmware/screendump.c b/firmware/screendump.c
index e27360b..226d08a 100644
--- a/firmware/screendump.c
+++ b/firmware/screendump.c
@@ -140,7 +140,11 @@ void screen_dump(void)
}
else
{
- write(fd, bmpheader, sizeof(bmpheader));
+ if(write(fd, bmpheader, sizeof(bmpheader)) != sizeof(bmpheader))
+ {
+ close(fd);
+ return;
+ }
/* BMP image goes bottom up */
for (y = LCD_HEIGHT - 1; y >= 0; y--)
@@ -243,7 +247,11 @@ void screen_dump(void)
while (dst < dst_end);
#endif /* LCD_DEPTH */
- write(fd, linebuf, DUMP_BMP_LINESIZE);
+ if(write(fd, linebuf, DUMP_BMP_LINESIZE) != DUMP_BMP_LINESIZE)
+ {
+ close(fd);
+ return;
+ }
}
}
close(fd);