Skip to content

Commit 8343d8f

Browse files
authored
fixes
1 parent f6abc51 commit 8343d8f

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

src/Datapoint/ConversionHelpers.cpp

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -88,11 +88,15 @@ std::size_t decodeSchedule(const uint8_t* data, std::size_t len, char* output, s
8888

8989
std::size_t pos = 0;
9090
for (std::size_t i = 0; i < 8; ++i) {
91-
unsigned int hour = std::min(23, data[i] >> 3);
92-
unsigned int minutes = std::min(59, (data[i] & 0x07) * 10);
93-
res = snprintf(&output[pos], maxLen - res, "%u.02:%u.02", hour, minutes);
94-
if (res < 0) return 0;
95-
pos += res;
91+
unsigned int hour = data[i] >> 3;
92+
unsigned int minutes = sdata[i] & 0x07) * 10;
93+
if (hour > 23 || minutes > 59) {
94+
hour = 0;
95+
minutes 0;
96+
}
97+
std::size_t result = snprintf(&output[pos], maxLen - res, "%u.02:%u.02", hour, minutes);
98+
if (result < 0) return 0;
99+
pos += result;
96100
if (i < 7) {
97101
&output[pos++] = ' ';
98102
}

0 commit comments

Comments
 (0)