From: Erik Faye-Lund Date: Fri, 10 Jul 2020 11:08:30 +0000 (+0200) Subject: mesa/main: use call_once instead of open-coding X-Git-Url: https://git.libre-soc.org/?p=mesa.git;a=commitdiff_plain;h=34fe561895bed253070b7dadaa86b4473ad7b51a;hp=0a4aa612ba27d6b9e550f7c4a009f30fcfa0c93e mesa/main: use call_once instead of open-coding We already have a utility for this, so let's use that instead. Reviewed-by: Kristian H. Kristensen Part-of: --- diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index b8b11b0c450..be2e7df5824 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -394,11 +394,11 @@ one_time_init(void) } /** - * One-time initialization mutex lock. + * One-time initialization flag * * \sa Used by _mesa_initialize(). */ -mtx_t OneTimeLock = _MTX_INITIALIZER_NP; +static once_flag init_once = ONCE_FLAG_INIT; /** @@ -413,17 +413,7 @@ mtx_t OneTimeLock = _MTX_INITIALIZER_NP; void _mesa_initialize(void) { - static bool initialized; - - mtx_lock(&OneTimeLock); - - /* truly one-time init */ - if (!initialized) - one_time_init(); - - initialized = true; - - mtx_unlock(&OneTimeLock); + call_once(&init_once, one_time_init); }