Mesa (master): egl: fix deadlock in malloc error path

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Sep 3 23:11:07 UTC 2019


Module: Mesa
Branch: master
Commit: 43d470404c47d86d1fab93d1345e09375bcf4fb6
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=43d470404c47d86d1fab93d1345e09375bcf4fb6

Author: Eric Engestrom <eric.engestrom at intel.com>
Date:   Mon Aug 26 15:29:49 2019 +0100

egl: fix deadlock in malloc error path

Fixes: cb0980e69aa921af7086 ("egl: move alloc & init out of _eglBuiltInDriver{DRI2,Haiku}")
Signed-off-by: Eric Engestrom <eric.engestrom at intel.com>
Reviewed-by: Tapani Pälli <tapani.palli at intel.com>

---

 src/egl/main/egldriver.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/egl/main/egldriver.c b/src/egl/main/egldriver.c
index e719b19a63f..0d8919aa0e1 100644
--- a/src/egl/main/egldriver.c
+++ b/src/egl/main/egldriver.c
@@ -56,8 +56,10 @@ _eglGetDriver(void)
 
    if (!_eglDriver) {
       _eglDriver = calloc(1, sizeof(*_eglDriver));
-      if (!_eglDriver)
+      if (!_eglDriver) {
+         mtx_unlock(&_eglModuleMutex);
          return NULL;
+      }
       _eglInitDriver(_eglDriver);
    }
 




More information about the mesa-commit mailing list