瀏覽代碼

[X11] Fix GL init memory leak when transparency is enabled.

Pāvels Nadtočajevs 5 月之前
父節點
當前提交
a12503b88c
共有 1 個文件被更改,包括 4 次插入0 次删除
  1. 4 0
      platform/linuxbsd/x11/gl_manager_x11.cpp

+ 4 - 0
platform/linuxbsd/x11/gl_manager_x11.cpp

@@ -137,6 +137,10 @@ Error GLManager_X11::_create_context(GLDisplay &gl_display) {
 		ERR_FAIL_NULL_V(fbc, ERR_UNCONFIGURED);
 		ERR_FAIL_NULL_V(fbc, ERR_UNCONFIGURED);
 
 
 		for (int i = 0; i < fbcount; i++) {
 		for (int i = 0; i < fbcount; i++) {
+			if (vi) {
+				XFree(vi);
+				vi = nullptr;
+			}
 			vi = (XVisualInfo *)glXGetVisualFromFBConfig(x11_display, fbc[i]);
 			vi = (XVisualInfo *)glXGetVisualFromFBConfig(x11_display, fbc[i]);
 			if (!vi) {
 			if (!vi) {
 				continue;
 				continue;