summaryrefslogtreecommitdiff
path: root/glcddrivers/st7565r-reel.c
diff options
context:
space:
mode:
authorManuel Reimer <manuel.reimer@gmx.de>2018-03-18 11:35:54 +0100
committerManuel Reimer <manuel.reimer@gmx.de>2018-03-18 11:36:47 +0100
commitf6d725077240339d3bdfd3719e736a1bcb2b176f (patch)
treeaf016cb538560074a0e24400d3db97a003a4f990 /glcddrivers/st7565r-reel.c
parent3d9c2cbae4365c1c76dafc4b91ef2085f9c701e5 (diff)
downloadgraphlcd-base-f6d725077240339d3bdfd3719e736a1bcb2b176f.tar.gz
graphlcd-base-f6d725077240339d3bdfd3719e736a1bcb2b176f.tar.bz2
st7565r-reel: Prevent possible segfault
Diffstat (limited to 'glcddrivers/st7565r-reel.c')
-rw-r--r--glcddrivers/st7565r-reel.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/glcddrivers/st7565r-reel.c b/glcddrivers/st7565r-reel.c
index 29b6a39..0f13486 100644
--- a/glcddrivers/st7565r-reel.c
+++ b/glcddrivers/st7565r-reel.c
@@ -265,6 +265,11 @@ void cDriverST7565RReel::display_cmd(unsigned char cmd)
void cDriverST7565RReel::display_data(unsigned char *data, unsigned char l)
{
+ if (l > 60)
+ {
+ syslog(LOG_ERR, "cDriverST7565RReel::display_data buffer length exceeded!");
+ }
+
unsigned char buf[64]={0xa5,0x05,(unsigned char)(l+2),+1};
memcpy(buf+4,data,l);
port->WriteData(buf, l+4);