1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-14 03:50:02 +03:00

Merge pull request #9871 from mikeller/fix_resource_command

Fixed pin id parsing in CLI.
This commit is contained in:
Michael Keller 2020-06-03 23:37:18 +12:00 committed by GitHub
commit f101a730a1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -5204,24 +5204,27 @@ static void resourceCheck(uint8_t resourceIndex, uint8_t index, ioTag_t newTag)
}
}
static bool strToPin(char *pch, ioTag_t *tag)
static bool strToPin(char *ptr, ioTag_t *tag)
{
if (strcasecmp(pch, "NONE") == 0) {
if (strcasecmp(ptr, "NONE") == 0) {
*tag = IO_TAG_NONE;
return true;
} else {
unsigned pin = 0;
unsigned port = (*pch >= 'a') ? *pch - 'a' : *pch - 'A';
const unsigned port = (*ptr >= 'a') ? *ptr - 'a' : *ptr - 'A';
if (port < 8) {
pch++;
pin = atoi(pch);
if (pin < 16) {
ptr++;
char *end;
const long pin = strtol(ptr, &end, 10);
if (end != ptr && pin >= 0 && pin < 16) {
*tag = DEFIO_TAG_MAKE(port, pin);
return true;
}
}
}
return false;
}