From 50e4850745f1082347015512b68cca080ad0949e Mon Sep 17 00:00:00 2001 From: bsongis Date: Fri, 8 Aug 2014 16:29:13 +0200 Subject: [PATCH] Fixes #1580 --- radio/src/lcd_taranis.cpp | 7 ++++++- radio/src/tests/bmpwrapping_212x64.png | Bin 0 -> 404 bytes radio/src/tests/lcd.cpp | 12 ++++++++++++ radio/src/tests/plane.bmp | Bin 0 -> 1002 bytes 4 files changed, 18 insertions(+), 1 deletion(-) create mode 100755 radio/src/tests/bmpwrapping_212x64.png create mode 100755 radio/src/tests/plane.bmp diff --git a/radio/src/lcd_taranis.cpp b/radio/src/lcd_taranis.cpp index 121698355..60717f886 100755 --- a/radio/src/lcd_taranis.cpp +++ b/radio/src/lcd_taranis.cpp @@ -145,7 +145,12 @@ void lcd_bmp(xcoord_t x, uint8_t y, const pm_uchar * img, uint8_t offset, uint8_ { const pm_uchar *q = img; uint8_t w = pgm_read_byte(q++); - if (!width) width = w; + if (!width || width > w) { + width = w; + } + if (x+width > LCD_W) { + width = LCD_W-x; + } uint8_t rows = (pgm_read_byte(q++) + 1) / 2; for (uint8_t row=0; rowf-s}`$^&-R>6 z1s?;oZp>Y~D(=JeZ?*q_&Hmo>y20K4CHI5>((l(jb}{++qO@||>Q%+AH6~V8yY2tW zzJ9d$;>6fc+i&W2RkbhtYqre(s%{rn@y5SKr|7+Z&6?tuK$a;`Hq83BusmblZk3&H zC#l#a9dYmZ(IF^r_(<8U=151s#79A8uwdHj(&5qK>uYT0 zhg^K^Tp9Ybwb^ZR^QAtGqwWpoUvLVe8DRGRuw&Or97bcc4=i{tYvIv19SbG`b)IzJ qUD*D_LeST)D)!s6u&X;iaesLg6!>V%Z9ZVQGI+ZBxvXFyjw zpxAWV-G9INXJ)&-`&bFbo4%iQwmy>_QNPgh^_k5^6-<$7ez@7*K0NJSzuNo#=6v(= znYyl9_kDk*^LQABlbh4`Rr|QRW~jf+Jt`vOILb7s_kWJ`OR{WT#*>tD+;W}MLQBn( zQ_TJHya1+J)=`XorTc8BBEXm;fWT;1L1LDofWSg^2qG3Vu*AGN^yH?V!aGJi7{28P zAV$>0z+k7R1|DeHz!<7mL@;Vv8^NIQ-dJN5ty82fnsrLYl9-q>NaP@}OSGCAnKi=@ prKoZ4hE4sGi)!s>%{CS(bSouLq}!oH?1#jAbC>!FJy!8gt8W6!D(nCN literal 0 HcmV?d00001