فهرست منبع

dbus: fix spurious leak reports with SDL_SHUTDOWN_DBUS_ON_QUIT=0

Cameron Gutman 2 ماه پیش
والد
کامیت
c4c185283f
1فایلهای تغییر یافته به همراه7 افزوده شده و 1 حذف شده
  1. 7 1
      src/core/linux/SDL_dbus.c

+ 7 - 1
src/core/linux/SDL_dbus.c

@@ -189,10 +189,16 @@ void SDL_DBus_Quit(void)
         if (dbus.shutdown) {
             dbus.shutdown();
         }
+
+        UnloadDBUSLibrary();
+    } else {
+        /* Leaving libdbus loaded when skipping dbus_shutdown() avoids
+         * spurious leak warnings from LeakSanitizer on internal D-Bus
+         * allocations that would be freed by dbus_shutdown(). */
+        dbus_handle = NULL;
     }
 
     SDL_zero(dbus);
-    UnloadDBUSLibrary();
     if (inhibit_handle) {
         SDL_free(inhibit_handle);
         inhibit_handle = NULL;