From d311e85b91f226914de1f56f67590191b419b45f Mon Sep 17 00:00:00 2001 From: Hisham Date: Tue, 2 Feb 2016 23:20:11 +0000 Subject: Avoid crash on huge screens. Fix by @Explorer09 (see discussion on #355). --- Meter.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Meter.c b/Meter.c index 7b775d61..9a7868e7 100644 --- a/Meter.c +++ b/Meter.c @@ -407,7 +407,12 @@ static void GraphMeterMode_draw(Meter* this, int x, int y, int w) { data->values[nValues - 1] = value; } - for (int i = nValues - (w*2) + 2, k = 0; i < nValues; i+=2, k++) { + int i = nValues - (w*2) + 2, k = 0; + if (i < 0) { + k = -i/2; + i = 0; + } + for (; i < nValues; i+=2, k++) { int pix = GraphMeterMode_pixPerRow * GRAPH_HEIGHT; int v1 = CLAMP(data->values[i] * pix, 1, pix); int v2 = CLAMP(data->values[i+1] * pix, 1, pix); -- cgit v1.2.3