gustavonihei commented on a change in pull request #4270:
URL: https://github.com/apache/incubator-nuttx/pull/4270#discussion_r681999604
##########
File path: libs/libc/time/lib_localtime.c
##########
@@ -2528,9 +2537,20 @@ void tzset(void)
{
FAR const char *name;
- tz_semtake(&g_lcl_sem);
-
name = getenv("TZ");
+ if (g_lcl_isset > 0 && name && strcmp(g_lcl_tzname, name) == 0)
+ {
+ return;
+ }
Review comment:
Ok, but that explains the need for the `if (up_interrupt_context())`.
My question is regarding the `if (g_lcl_isset > 0 && name &&
strcmp(g_lcl_tzname, name) == 0)` check.
So far I cannot understand the need for checking them twice. If the first
check is valid and safe to be performed, why do you need to lock the semaphore
later for doing the same verification?
Is it because of the error handling?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]