version: Change this IF statement to a SWITCH statement

This commit is contained in:
muramura
2024-09-24 10:27:12 +02:00
committed by Mathieu Bresciani
parent f60bb2c6bc
commit 21a2350eca
+66 -24
View File
@@ -75,27 +75,48 @@ uint32_t version_tag_to_number(const char *tag)
int firmware_type = FIRMWARE_TYPE_RELEASE;
for (size_t i = 0; i < strlen(tag); i++) {
if (tag[i] == '-') {
switch (tag[i]) {
case '-':
dash_count++;
break;
} else if (tag[i] == '.') {
case '.':
point_count++;
}
break;
if (tag[i] == 'r' && i < strlen(tag) - 1 && tag[i + 1] == 'c') {
firmware_type = FIRMWARE_TYPE_RC;
case 'r':
if (i < strlen(tag) - 1 && tag[i + 1] == 'c') {
firmware_type = FIRMWARE_TYPE_RC;
} else if (tag[i] == 'p') {
}
break;
case 'p':
firmware_type = FIRMWARE_TYPE_ALPHA;
break;
} else if (tag[i] == 't' && i < strlen(tag) - 1 && tag[i + 1] == 'y') {
firmware_type = FIRMWARE_TYPE_DEV;
case 't':
if (i < strlen(tag) - 1 && tag[i + 1] == 'y') {
firmware_type = FIRMWARE_TYPE_DEV;
} else if (tag[i] == 't') {
firmware_type = FIRMWARE_TYPE_BETA;
} else {
firmware_type = FIRMWARE_TYPE_BETA;
} else if (tag[i] == 'v' && i > 0) {
firmware_type = FIRMWARE_TYPE_DEV;
}
break;
case 'v':
if (i > 0) {
firmware_type = FIRMWARE_TYPE_DEV;
}
break;
default:
break;
}
}
@@ -163,27 +184,48 @@ uint32_t version_tag_to_vendor_version_number(const char *tag)
int firmware_type = FIRMWARE_TYPE_RELEASE;
for (size_t i = 0; i < strlen(tag); i++) {
if (tag[i] == '-') {
switch (tag[i]) {
case '-':
dash_count++;
break;
} else if (tag[i] == '.') {
case '.':
point_count++;
}
break;
if (tag[i] == 'r' && i < strlen(tag) - 1 && tag[i + 1] == 'c') {
firmware_type = FIRMWARE_TYPE_RC;
case 'r':
if (i < strlen(tag) - 1 && tag[i + 1] == 'c') {
firmware_type = FIRMWARE_TYPE_RC;
} else if (tag[i] == 'p') {
}
break;
case 'p':
firmware_type = FIRMWARE_TYPE_ALPHA;
break;
} else if (tag[i] == 't' && i < strlen(tag) - 1 && tag[i + 1] == 'y') {
firmware_type = FIRMWARE_TYPE_DEV;
case 't':
if (i < strlen(tag) - 1 && tag[i + 1] == 'y') {
firmware_type = FIRMWARE_TYPE_DEV;
} else if (tag[i] == 't') {
firmware_type = FIRMWARE_TYPE_BETA;
} else {
firmware_type = FIRMWARE_TYPE_BETA;
} else if (tag[i] == 'v' && i > 0) {
firmware_type = FIRMWARE_TYPE_DEV;
}
break;
case 'v':
if (i > 0) {
firmware_type = FIRMWARE_TYPE_DEV;
}
break;
default:
break;
}
}