summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2018-03-22 03:23:57 +1100
committer Vas Crabb <vas@vastheman.com>2018-03-22 03:23:57 +1100
commit418bc70cfa3b293cdfdcdefcbd6ea6aed60cd69a (patch)
tree128ec479248d28c5b9cd26d06a7fe48df0e37917
parenta1c35681bc8f6c6b7ed033760e3c1b53b4391d1b (diff)
fix count_leading_zeroes(0) C fallback (nw)
-rw-r--r--src/osd/eminline.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/osd/eminline.h b/src/osd/eminline.h
index 685df59abae..bb0aec63468 100644
--- a/src/osd/eminline.h
+++ b/src/osd/eminline.h
@@ -273,6 +273,7 @@ inline float recip_approx(float value)
#ifndef count_leading_zeros
inline uint8_t count_leading_zeros(uint32_t val)
{
+ if (!val) return 32U;
uint8_t count;
for (count = 0; int32_t(val) >= 0; count++) val <<= 1;
return count;
@@ -289,7 +290,7 @@ inline uint8_t count_leading_zeros(uint32_t val)
inline uint8_t count_leading_ones(uint32_t val)
{
uint8_t count;
- for (count = 0; (int32_t)val < 0; count++) val <<= 1;
+ for (count = 0; int32_t(val) < 0; count++) val <<= 1;
return count;
}
#endif