diff --git a/Meter.c b/Meter.c index d1d04c04e..33e064b8d 100644 --- a/Meter.c +++ b/Meter.c @@ -504,7 +504,7 @@ static uint16_t GraphMeterMode_makeDetailsMask(const GraphColorComputeState* pre assert(rem < 1.0); double numDots = ceil(rem * 8.0); - double maxBlanks = 8.0 - numDots; + uint8_t maxBlanks = 8 - (uint8_t)numDots; uint8_t blanksAtEnd; bool roundsUpInAscii = false; @@ -514,7 +514,7 @@ static uint16_t GraphMeterMode_makeDetailsMask(const GraphColorComputeState* pre blanksAtEnd = (uint8_t)blanksAtTopCell; roundsUpInAscii = true; } else if (prev->nCellsPainted == 0 || prev->topPoint <= (double)(int)prev->nCellsPainted) { - blanksAtEnd = (uint8_t)maxBlanks % 8; + blanksAtEnd = maxBlanks % 8; } else if ((double)(int)new->nCellsPainted > new->topPoint) { assert((int)new->nCellsPainted - new->topPoint < 1.0); // Unlike other conditions, this one rounds to nearest for visual reason. @@ -538,7 +538,7 @@ static uint16_t GraphMeterMode_makeDetailsMask(const GraphColorComputeState* pre uint8_t blanksAtStart; if (prev->nCellsPainted > 0) { - blanksAtStart = (uint8_t)((int)maxBlanks - blanksAtEnd) % 8; + blanksAtStart = (uint8_t)(maxBlanks - blanksAtEnd) % 8; } else { // Always zero blanks for the first cell. // When an item would be painted with all cells (from the first cell to