From: teor Date: Thu, 26 Sep 2019 02:18:23 +0000 (+1000) Subject: log: explain why it is safe to leave the log mutex initialized X-Git-Tag: tor-0.4.2.2-alpha~23^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=749c2e1761c753992fb2549e7ee912e568f563d6;p=thirdparty%2Ftor.git log: explain why it is safe to leave the log mutex initialized The log mutex is dynamically initialized, guarded by log_mutex_initialized. We don't want to destroy it, because after it is destroyed, we won't see any more logs. If tor is re-initialized, log_mutex_initialized will still be 1. So we won't trigger any undefined behaviour by trying to re-initialize the log mutex. Part of 31736, but committed in this branch to avoid merge conflicts. --- diff --git a/src/lib/log/log.c b/src/lib/log/log.c index a9ad38fb25..eacd413a53 100644 --- a/src/lib/log/log.c +++ b/src/lib/log/log.c @@ -804,7 +804,10 @@ logs_free_all(void) } /* We _could_ destroy the log mutex here, but that would screw up any logs - * that happened between here and the end of execution. */ + * that happened between here and the end of execution. + * If tor is re-initialized, log_mutex_initialized will still be 1. So we + * won't trigger any undefined behaviour by trying to re-initialize the + * log mutex. */ } /** Remove and free the log entry victim from the linked-list