From: David Ashley Date: Sun, 28 Jan 2018 22:47:07 +0000 (-0600) Subject: This is a fix for the esp_log_level_set function. The problem is when this X-Git-Tag: v3.1-beta1~435^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=750c8c00c89f3911692c37494c2eb8401cd5308e;p=esp-idf This is a fix for the esp_log_level_set function. The problem is when this function is called but NOT withe the same 'c' string constant that the LOG* calls used in each module, the cache check doesn't match, so the cached entry won't get updated. There's no point in optimizing this function anyway because it is only called rarely. --- diff --git a/components/log/log.c b/components/log/log.c index 589f1983a1..28bd89d80c 100644 --- a/components/log/log.c +++ b/components/log/log.c @@ -164,7 +164,7 @@ void esp_log_level_set(const char* tag, esp_log_level_t level) #ifdef LOG_BUILTIN_CHECKS assert(i == 0 || s_log_cache[(i - 1) / 2].generation < s_log_cache[i].generation); #endif - if (s_log_cache[i].tag == tag) { + if (strcmp(s_log_cache[i].tag,tag) == 0) { s_log_cache[i].level = level; break; }