[lua] Fix sensor max and min matching

Resolves #442
This commit is contained in:
Raphael Coeffic
2021-07-14 08:45:00 +02:00
parent f026670065
commit 6d11fa8033
3 changed files with 13 additions and 1 deletions
+2 -1
View File
@@ -372,7 +372,8 @@ bool luaFindFieldByName(const char * name, LuaField & field, unsigned int flags)
for (int i = 0; i < MAX_TELEMETRY_SENSORS; i++) {
if (isTelemetryFieldAvailable(i)) {
const char* sensorName = g_model.telemetrySensors[i].label;
if ((len <= TELEM_LABEL_LEN) && !strncmp(sensorName, name, len)) {
int len = strnlen(sensorName, TELEM_LABEL_LEN);
if (!strncmp(sensorName, name, len)) {
if (name[len] == '\0') {
field.id = MIXSRC_FIRST_TELEM + 3 * i;
field.desc[0] = '\0';
+10
View File
@@ -89,6 +89,16 @@ int zchar2str(char * dest, const char * src, int size)
return size+1;
}
int strnlen(const char *src, int max_size)
{
for (int i=0; i<max_size; i++) {
if (src[i] == '\0')
return i;
}
return max_size;
}
unsigned int effectiveLen(const char * str, unsigned int size)
{
while (size > 0) {
+1
View File
@@ -30,6 +30,7 @@ char char2lower(char c);
int8_t char2zchar(char c);
void str2zchar(char *dest, const char *src, int size);
int zchar2str(char *dest, const char *src, int size);
int strnlen(const char *src, int max_size);
char * strAppend(char * dest, const char * source, int len = 0);
char * strAppendUnsigned(char * dest, uint32_t value, uint8_t digits = 0, uint8_t radix = 10);