From ddeef350bd0ee571163afa8366846c8c18a9dc3a Mon Sep 17 00:00:00 2001
From: LibretroAdmin <reallibretroretroarch@gmail.com>
Date: Mon, 5 Sep 2022 18:36:45 +0200
Subject: [PATCH] (X11) Simplify HAVE_XF86VM code ifdefs some more (CodeQL)
 Take out for now while it fails to build

---
 .github/workflows/codeql.yml   | 72 ----------------------------------
 gfx/drivers_context/x_ctx.c    | 37 ++++++++---------
 gfx/drivers_context/x_vk_ctx.c | 37 ++++++++---------
 gfx/drivers_context/xegl_ctx.c | 35 ++++++++---------
 4 files changed, 50 insertions(+), 131 deletions(-)
 delete mode 100644 .github/workflows/codeql.yml

diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml
deleted file mode 100644
index 263551e467..0000000000
--- a/.github/workflows/codeql.yml
+++ /dev/null
@@ -1,72 +0,0 @@
-# For most projects, this workflow file will not need changing; you simply need
-# to commit it to your repository.
-#
-# You may wish to alter this file to override the set of languages analyzed,
-# or to provide custom queries or build logic.
-#
-# ******** NOTE ********
-# We have attempted to detect the languages in your repository. Please check
-# the `language` matrix defined below to confirm you have the correct set of
-# supported CodeQL languages.
-#
-name: "CodeQL"
-
-on:
-  push:
-    branches: [ "master" ]
-  pull_request:
-    # The branches below must be a subset of the branches above
-    branches: [ "master" ]
-  schedule:
-    - cron: '43 20 * * 5'
-
-jobs:
-  analyze:
-    name: Analyze
-    runs-on: ubuntu-latest
-    permissions:
-      actions: read
-      contents: read
-      security-events: write
-
-    strategy:
-      fail-fast: false
-      matrix:
-        language: [ 'cpp' ]
-        # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
-        # Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
-
-    steps:
-    - name: Checkout repository
-      uses: actions/checkout@v3
-
-    # Initializes the CodeQL tools for scanning.
-    - name: Initialize CodeQL
-      uses: github/codeql-action/init@v2
-      with:
-        languages: ${{ matrix.language }}
-        # If you wish to specify custom queries, you can do so here or in a config file.
-        # By default, queries listed here will override any specified in a config file.
-        # Prefix the list here with "+" to use these queries and those in the config file.
-        
-        # Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
-        # queries: security-extended,security-and-quality
-
-        
-    # Autobuild attempts to build any compiled languages  (C/C++, C#, or Java).
-    # If this step fails, then you should remove it and run the build manually (see below)
-    - name: Autobuild
-      uses: github/codeql-action/autobuild@v2
-
-    # ℹī¸ Command-line programs to run using the OS shell.
-    # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
-
-    #   If the Autobuild fails above, remove it and uncomment the following three lines. 
-    #   modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
-
-    # - run: |
-    #   echo "Run, Build Application using script"
-    #   ./location_of_script_within_repo/buildscript.sh
-
-    - name: Perform CodeQL Analysis
-      uses: github/codeql-action/analyze@v2
diff --git a/gfx/drivers_context/x_ctx.c b/gfx/drivers_context/x_ctx.c
index d9f2dba025..43b977c900 100644
--- a/gfx/drivers_context/x_ctx.c
+++ b/gfx/drivers_context/x_ctx.c
@@ -148,7 +148,6 @@ static int GLXExtensionSupported(Display *dpy, const char *extension)
 
    return 0;
 }
-#endif
 
 static int x_log_error_handler(Display *dpy, XErrorEvent *event)
 {
@@ -158,6 +157,7 @@ static int x_log_error_handler(Display *dpy, XErrorEvent *event)
          buf, event->request_code, event->minor_code);
    return 0;
 }
+#endif
 
 static int x_nul_handler(Display *dpy, XErrorEvent *event) { return 0; }
 
@@ -514,30 +514,27 @@ static bool gfx_ctx_x_set_video_mode(void *data,
    {
       if (x11_enter_fullscreen(g_x11_dpy, width, height))
       {
+         char *wm_name        = x11_get_wm_name(g_x11_dpy);
          x->should_reset_mode = true;
-         true_full = true;
+         true_full            = true;
+
+         if (wm_name)
+         {
+            RARCH_LOG("[GLX]: Window manager is %s.\n", wm_name);
+            if (strcasestr(wm_name, "xfwm"))
+            {
+               RARCH_LOG("[GLX]: Using override-redirect workaround.\n");
+               swa.override_redirect = True;
+            }
+            free(wm_name);
+         }
+
+         if (!x11_has_net_wm_fullscreen(g_x11_dpy))
+            swa.override_redirect = True;
       }
       else
          RARCH_ERR("[GLX]: Entering true fullscreen failed. Will attempt windowed mode.\n");
    }
-
-   if (true_full)
-   {
-	   char *wm_name = x11_get_wm_name(g_x11_dpy);
-	   if (wm_name)
-	   {
-		   RARCH_LOG("[GLX]: Window manager is %s.\n", wm_name);
-		   if (strcasestr(wm_name, "xfwm"))
-		   {
-			   RARCH_LOG("[GLX]: Using override-redirect workaround.\n");
-			   swa.override_redirect = True;
-		   }
-		   free(wm_name);
-	   }
-
-      if (!x11_has_net_wm_fullscreen(g_x11_dpy))
-         swa.override_redirect = True;
-   }
 #endif
 
    if (video_monitor_index)
diff --git a/gfx/drivers_context/x_vk_ctx.c b/gfx/drivers_context/x_vk_ctx.c
index d80d93c893..551377d4d6 100644
--- a/gfx/drivers_context/x_vk_ctx.c
+++ b/gfx/drivers_context/x_vk_ctx.c
@@ -294,30 +294,27 @@ static bool gfx_ctx_x_vk_set_video_mode(void *data,
    {
       if (x11_enter_fullscreen(g_x11_dpy, width, height))
       {
-         x->should_reset_mode = true;
-         true_full = true;
+         char *wm_name           = x11_get_wm_name(g_x11_dpy);
+         x->should_reset_mode    = true;
+         true_full               = true;
+
+         if (wm_name)
+         {
+            RARCH_LOG("[X/Vulkan]: Window manager is %s.\n", wm_name);
+
+            if (strcasestr(wm_name, "xfwm"))
+            {
+               RARCH_LOG("[X/Vulkan]: Using override-redirect workaround.\n");
+               swa.override_redirect = True;
+            }
+            free(wm_name);
+         }
+         if (!x11_has_net_wm_fullscreen(g_x11_dpy))
+            swa.override_redirect = True;
       }
       else
          RARCH_ERR("[X/Vulkan]: Entering true fullscreen failed. Will attempt windowed mode.\n");
    }
-
-   if (true_full)
-   {
-      char *wm_name = x11_get_wm_name(g_x11_dpy);
-      if (wm_name)
-      {
-         RARCH_LOG("[X/Vulkan]: Window manager is %s.\n", wm_name);
-
-         if (strcasestr(wm_name, "xfwm"))
-         {
-            RARCH_LOG("[X/Vulkan]: Using override-redirect workaround.\n");
-            swa.override_redirect = True;
-         }
-         free(wm_name);
-      }
-      if (!x11_has_net_wm_fullscreen(g_x11_dpy))
-         swa.override_redirect = True;
-   }
 #endif
 
    if (video_monitor_index)
diff --git a/gfx/drivers_context/xegl_ctx.c b/gfx/drivers_context/xegl_ctx.c
index b4d92c26f8..f6b56122b7 100644
--- a/gfx/drivers_context/xegl_ctx.c
+++ b/gfx/drivers_context/xegl_ctx.c
@@ -313,30 +313,27 @@ static bool gfx_ctx_xegl_set_video_mode(void *data,
    {
       if (x11_enter_fullscreen(g_x11_dpy, width, height))
       {
+         char *wm_name           = x11_get_wm_name(g_x11_dpy);
          xegl->should_reset_mode = true;
-         true_full = true;
+         true_full               = true;
+
+         if (wm_name)
+         {
+            RARCH_LOG("[X/EGL]: Window manager is %s.\n", wm_name);
+
+            if (strcasestr(wm_name, "xfwm"))
+            {
+               RARCH_LOG("[X/EGL]: Using override-redirect workaround.\n");
+               swa.override_redirect = True;
+            }
+            free(wm_name);
+         }
+         if (!x11_has_net_wm_fullscreen(g_x11_dpy))
+            swa.override_redirect = True;
       }
       else
          RARCH_ERR("[X/EGL]: Entering true fullscreen failed. Will attempt windowed mode.\n");
    }
- 
-   if (true_full)
-   {
-      char *wm_name = x11_get_wm_name(g_x11_dpy);
-      if (wm_name)
-      {
-         RARCH_LOG("[X/EGL]: Window manager is %s.\n", wm_name);
-
-         if (strcasestr(wm_name, "xfwm"))
-         {
-            RARCH_LOG("[X/EGL]: Using override-redirect workaround.\n");
-            swa.override_redirect = True;
-         }
-         free(wm_name);
-      }
-      if (!x11_has_net_wm_fullscreen(g_x11_dpy))
-         swa.override_redirect = True;
-   }
 #endif