From c867b01e4d80da1e88c2b6abab5a457f599154d3 Mon Sep 17 00:00:00 2001 From: Maschell Date: Sat, 24 Sep 2022 17:43:02 +0200 Subject: [PATCH] ConfigItems: Use strdup for string duplication, rename configID to configId in WUPSConfigItemMultipleValues --- include/wups/config/WUPSConfigItemMultipleValues.h | 4 ++-- libraries/libwups/WUPSConfigItemMultipleValues.cpp | 14 ++++++-------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/include/wups/config/WUPSConfigItemMultipleValues.h b/include/wups/config/WUPSConfigItemMultipleValues.h index 29e5961..f1f249f 100644 --- a/include/wups/config/WUPSConfigItemMultipleValues.h +++ b/include/wups/config/WUPSConfigItemMultipleValues.h @@ -10,7 +10,7 @@ typedef struct ConfigItemMultipleValuesPair { } ConfigItemMultipleValuesPair; typedef struct ConfigItemMultipleValues { - char *configID; + char *configId; WUPSConfigItemHandle handle; int32_t defaultValueIndex; int32_t valueIndex; @@ -21,7 +21,7 @@ typedef struct ConfigItemMultipleValues { typedef void (*MultipleValuesChangedCallback)(ConfigItemMultipleValues *, uint32_t); -bool WUPSConfigItemMultipleValues_AddToCategory(WUPSConfigCategoryHandle cat, const char *configID, const char *displayName, int defaultValueIndex, ConfigItemMultipleValuesPair *possibleValues, +bool WUPSConfigItemMultipleValues_AddToCategory(WUPSConfigCategoryHandle cat, const char *configId, const char *displayName, int defaultValueIndex, ConfigItemMultipleValuesPair *possibleValues, int pairCount, MultipleValuesChangedCallback callback); #define WUPSConfigItemMultipleValues_AddToCategoryHandled(__config__, __cat__, __configID__, __displayName__, __defaultValueIndex__, __possibleValues__, __pairCount__, __callback__) \ diff --git a/libraries/libwups/WUPSConfigItemMultipleValues.cpp b/libraries/libwups/WUPSConfigItemMultipleValues.cpp index 6cb1753..a1dc804 100644 --- a/libraries/libwups/WUPSConfigItemMultipleValues.cpp +++ b/libraries/libwups/WUPSConfigItemMultipleValues.cpp @@ -73,7 +73,7 @@ void WUPSConfigItemMultipleValues_onSelected(void *context, bool isSelected) { } extern "C" bool -WUPSConfigItemMultipleValues_AddToCategory(WUPSConfigCategoryHandle cat, const char *configID, const char *displayName, +WUPSConfigItemMultipleValues_AddToCategory(WUPSConfigCategoryHandle cat, const char *configId, const char *displayName, int32_t defaultValueIndex, ConfigItemMultipleValuesPair *possibleValues, int pairCount, MultipleValuesChangedCallback callback) { if (cat == 0 || displayName == nullptr || possibleValues == nullptr || pairCount < 0) { @@ -103,12 +103,10 @@ WUPSConfigItemMultipleValues_AddToCategory(WUPSConfigCategoryHandle cat, const c item->defaultValueIndex = defaultValueIndex; item->callback = (void *) callback; - if (configID != nullptr) { - auto configIDLen = strlen(configID) + 1; - item->configID = (char *) malloc(configIDLen); - strncpy(item->configID, configID, configIDLen); + if (configId != nullptr) { + item->configId = strdup(configId); } else { - item->configID = nullptr; + item->configId = nullptr; } WUPSConfigCallbacks_t callbacks = { @@ -121,7 +119,7 @@ WUPSConfigItemMultipleValues_AddToCategory(WUPSConfigCategoryHandle cat, const c .onButtonPressed = &WUPSConfigItemMultipleValues_onButtonPressed, .onDelete = &WUPSConfigItemMultipleValues_onDelete}; - if (WUPSConfigItem_Create(&item->handle, configID, displayName, callbacks, item) < 0) { + if (WUPSConfigItem_Create(&item->handle, configId, displayName, callbacks, item) < 0) { free(item); return false; } @@ -140,7 +138,7 @@ void WUPSConfigItemMultipleValues_onDelete(void *context) { free(item->values[i].valueName); } - free(item->configID); + free(item->configId); free(item->values); free(item);