aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorinmarket <inmarket@ugfx.org>2017-03-01 10:45:20 +1000
committerinmarket <inmarket@ugfx.org>2017-03-01 10:47:10 +1000
commit29ccac5efc04b7b29cfdd0ce26869fe808ad16af (patch)
tree5c91142b1eeed3874c51316f14d45f57aa75005f /drivers
parent6956df1652c51eaddf5cd882f7fcde6571b240da (diff)
downloaduGFX-29ccac5efc04b7b29cfdd0ce26869fe808ad16af.tar.gz
uGFX-29ccac5efc04b7b29cfdd0ce26869fe808ad16af.tar.bz2
uGFX-29ccac5efc04b7b29cfdd0ce26869fe808ad16af.zip
Update to the UC8173 driver to fix memory overwrite
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gdisp/UC8173/gdisp_lld_UC8173.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/gdisp/UC8173/gdisp_lld_UC8173.c b/drivers/gdisp/UC8173/gdisp_lld_UC8173.c
index 75a4a237..97dd515a 100644
--- a/drivers/gdisp/UC8173/gdisp_lld_UC8173.c
+++ b/drivers/gdisp/UC8173/gdisp_lld_UC8173.c
@@ -32,7 +32,7 @@
#endif
#define PRIV(g) ((UC8173_Private*)((g)->priv))
-#define FRAMEBUFFER(g) (PRIV(g)->framebuffer)
+#define FRAMEBUFFER(g) ((uint8_t *)(PRIV(g)+1))
#define GDISP_FLG_NEEDFLUSH (GDISP_FLG_DRIVER << 0)
#if GDISP_LLD_PIXELFORMAT == GDISP_PIXELFORMAT_MONO
@@ -56,7 +56,6 @@ typedef struct UC8173_Private {
coord_t flushWindowY;
coord_t flushWindowWidth;
coord_t flushWindowHeight;
- uint8_t* framebuffer;
} UC8173_Private;
// This function rounds a given integer up to a specified multiple. Note, multiple must be a power of 2!
@@ -149,7 +148,6 @@ LLDSPEC bool_t gdisp_lld_init(GDisplay* g)
PRIV(g)->flushWindowY = 0;
PRIV(g)->flushWindowWidth = GDISP_SCREEN_WIDTH;
PRIV(g)->flushWindowHeight = GDISP_SCREEN_HEIGHT;
- PRIV(g)->framebuffer = (uint8_t*)(PRIV(g) + offsetof(UC8173_Private, framebuffer));
// Initialise the board interface
if (!init_board(g)) {