Hopefully correct code for C's strict aliasing rules

This commit is contained in:
henryk@ploetzli.ch 2009-09-08 02:36:50 +00:00
parent 9dbe0941fd
commit 45dcfac2cc

View file

@ -249,8 +249,8 @@ void SendVersion(void)
* symbol _bootphase1_version_pointer, perform slight sanity checks on the
* pointer, then use it.
*/
void *bootrom_version = *(void**)&_bootphase1_version_pointer;
if( bootrom_version < (void*)&_flash_start || bootrom_version >= (void*)&_flash_end ) {
char *bootrom_version = *(char**)&_bootphase1_version_pointer;
if( bootrom_version < &_flash_start || bootrom_version >= &_flash_end ) {
DbpString("bootrom version information appears invalid");
} else {
FormatVersionInformation(temp, sizeof(temp), "bootrom: ", bootrom_version);