forked from Ports/perfect_dark
Merge pull request #584 from SilentException/config-max-warning
Warn when CONFIG_MAX_SETTINGS limit is reached
This commit is contained in:
1 file changed
+6
-1
+6
-1
@@ -34,6 +34,7 @@ struct configentry {
|
|||||||
} settings[CONFIG_MAX_SETTINGS];
|
} settings[CONFIG_MAX_SETTINGS];
|
||||||
|
|
||||||
static s32 numSettings = 0;
|
static s32 numSettings = 0;
|
||||||
|
static u8 configMaxWarningLogged = 0;
|
||||||
|
|
||||||
static inline s32 configClampInt(s32 val, s32 min, s32 max)
|
static inline s32 configClampInt(s32 val, s32 min, s32 max)
|
||||||
{
|
{
|
||||||
@@ -64,11 +65,15 @@ static inline struct configentry *configAddEntry(const char *key)
|
|||||||
{
|
{
|
||||||
if (numSettings < CONFIG_MAX_SETTINGS) {
|
if (numSettings < CONFIG_MAX_SETTINGS) {
|
||||||
struct configentry *cfg = &settings[numSettings++];
|
struct configentry *cfg = &settings[numSettings++];
|
||||||
strncpy(cfg->key, key, CONFIG_MAX_KEYNAME);
|
snprintf(cfg->key, CONFIG_MAX_KEYNAME, "%s", key);
|
||||||
const char *delim = strrchr(cfg->key, '.');
|
const char *delim = strrchr(cfg->key, '.');
|
||||||
cfg->seclen = delim ? (delim - cfg->key) : 0;
|
cfg->seclen = delim ? (delim - cfg->key) : 0;
|
||||||
return cfg;
|
return cfg;
|
||||||
}
|
}
|
||||||
|
if (!configMaxWarningLogged) {
|
||||||
|
sysLogPrintf(LOG_WARNING, "Maximum number of configuration entries exceeded: %d", CONFIG_MAX_SETTINGS);
|
||||||
|
configMaxWarningLogged = 1;
|
||||||
|
}
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user