Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.7
-
None
-
Patch Available
Description
Code is doing things like:
uint8_t b[2]; uint16_t val; val = *(int16_t*)b;
Due to aliasing there isn't a guarantee that b[] will be placed on a 16 bit boundary.
Fix is to use unions to ensure alignment. Patch attached.