Index: Utilities.c =================================================================== diff -u -r3209df98c1afd0a9dac601db5a975f7e1a83909b -r40bef9dbb0e8daf48867d31843058fd88ae09c2d --- Utilities.c (.../Utilities.c) (revision 3209df98c1afd0a9dac601db5a975f7e1a83909b) +++ Utilities.c (.../Utilities.c) (revision 40bef9dbb0e8daf48867d31843058fd88ae09c2d) @@ -605,7 +605,7 @@ U08 ii; U08 value; U32 result = 0; - BOOL status = FALSE; + BOOL status = TRUE; if ( size <= STR_TO_HEX_CONV_MAX_BYTES ) { @@ -631,7 +631,6 @@ // For instance, if the value = 0x36 - 0x30 = the value becomes 6 value = ( value - ASCII_CODE_NUMBER_ZERO ); result = ( result << SHIFT_BITS_BY_4 ) | value; - status = TRUE; break; case ASCII_CODE_LETTER_A: @@ -644,11 +643,11 @@ // This converts the letters from A to F to 10 to 15. // For instance if the read value is 0x43 ( Hex C ) - 0x37 = 12 (decimal) value = ( value - HEX_LETTER_TO_NUMBER_CONV ); - result = ( result << SHIFT_BITS_BY_4 ) | value; - status = TRUE; + result = ( result << SHIFT_BITS_BY_4 ) | value; status = TRUE; break; default: + status = FALSE; // Do nothing since the character is not accepted. break; }