diff --git a/radio/src/storage/yaml/yaml_bits.cpp b/radio/src/storage/yaml/yaml_bits.cpp index 161f3e0b3..34b06f05e 100644 --- a/radio/src/storage/yaml/yaml_bits.cpp +++ b/radio/src/storage/yaml/yaml_bits.cpp @@ -244,7 +244,7 @@ char* yaml_rgb2hex(uint32_t i) int32_t yaml_to_signed(uint32_t i, uint32_t bits) { - if (i & (1 << (bits-1))) { + if (bits < 32 && (i & (1 << (bits-1)))) { i |= 0xFFFFFFFF << bits; }