From 14b1d87ad8c1fd5e836a1c0e3554545f7cddad13 Mon Sep 17 00:00:00 2001 From: flightlessmango <42713625+flightlessmango@users.noreply.github.com> Date: Thu, 11 Apr 2024 00:26:48 +0200 Subject: [PATCH] Revert "fix electron apps like minecraft-launcher" This reverts commit a65d1d8a2ba636b0289980f46866cabbfbc4a991. --- src/gl/inject_egl.cpp | 4 +--- src/gl/inject_glx.cpp | 7 ++++++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/gl/inject_egl.cpp b/src/gl/inject_egl.cpp index f5586385..9760a103 100644 --- a/src/gl/inject_egl.cpp +++ b/src/gl/inject_egl.cpp @@ -20,9 +20,7 @@ static void* get_egl_proc_address(const char* name) { void *func = nullptr; static void *(*pfn_eglGetProcAddress)(const char*) = nullptr; if (!pfn_eglGetProcAddress) { - void *handle = real_dlopen("libEGL.so", RTLD_LAZY); - if (!handle) - handle = real_dlopen("libEGL.so.1", RTLD_LAZY); + void *handle = real_dlopen("libEGL.so.1", RTLD_LAZY|RTLD_LOCAL); if (!handle) { SPDLOG_ERROR("Failed to open " MANGOHUD_ARCH " libEGL.so.1: {}", dlerror()); } else { diff --git a/src/gl/inject_glx.cpp b/src/gl/inject_glx.cpp index 7f8c71cf..afcb0d94 100644 --- a/src/gl/inject_glx.cpp +++ b/src/gl/inject_glx.cpp @@ -107,7 +107,12 @@ EXPORT_C_(void) glXDestroyContext(void *dpy, void *ctx) EXPORT_C_(int) glXMakeCurrent(void* dpy, void* drawable, void* ctx) { glx.Load(); SPDLOG_DEBUG("{}: {}, {}", __func__, drawable, ctx); - int ret = glx.MakeCurrent(dpy, drawable, ctx); + int ret = 0; + // This is hack, proper fix should be implemented. + // MakeCurrent fails on the minecraft-launcher so we + // just bypass it and minecraft hooking works as it should + if (get_program_name() != "minecraft-launcher") + ret = glx.MakeCurrent(dpy, drawable, ctx); if (!is_blacklisted()) { if (ret) {