test parse string for $

This commit is contained in:
Rick Sellens 2019-04-17 12:23:58 -04:00
parent 653b565d2a
commit 4d064cb796
1 changed files with 10 additions and 6 deletions

View File

@ -62,12 +62,16 @@ boolean Adafruit_GPS::parse(char *nmea) {
uint16_t sum = parseHex(*(ast+1)) * 16;
sum += parseHex(*(ast+2));
// check checksum
for (char *p = strchr(nmea,'$')+1; p < ast; p++) {
sum ^= *p;
}
if (sum != 0) {
// bad checksum :(
return false;
char *p = strchr(nmea,'$');
if(p == NULL) return false;
else{
for (char *p1 = p+1; p1 < ast; p1++) {
sum ^= *p1;
}
if (sum != 0) {
// bad checksum :(
return false;
}
}
} else {
return false;