Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package lxqt-panel for openSUSE:Factory 
checked in at 2025-12-25 19:57:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/lxqt-panel (Old)
 and      /work/SRC/openSUSE:Factory/.lxqt-panel.new.1928 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "lxqt-panel"

Thu Dec 25 19:57:38 2025 rev:43 rq:1324377 version:2.3.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/lxqt-panel/lxqt-panel.changes    2025-12-01 
11:12:51.353325418 +0100
+++ /work/SRC/openSUSE:Factory/.lxqt-panel.new.1928/lxqt-panel.changes  
2025-12-25 19:57:45.211506746 +0100
@@ -1,0 +2,8 @@
+Wed Dec 24 16:31:22 UTC 2025 - Shawn Dunn <[email protected]>
+
+- Update to version 2.3.2:
+  * Used QPointer for handling wlroots desktops to prevent dangling
+    pointers, especially with bad compositor codes (previously,
+    hyprland could make the panel crash)
+
+-------------------------------------------------------------------

Old:
----
  lxqt-panel-2.3.1.tar.xz
  lxqt-panel-2.3.1.tar.xz.asc

New:
----
  lxqt-panel-2.3.2.tar.xz
  lxqt-panel-2.3.2.tar.xz.asc

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ lxqt-panel.spec ++++++
--- /var/tmp/diff_new_pack.B6LtOR/_old  2025-12-25 19:57:46.175545863 +0100
+++ /var/tmp/diff_new_pack.B6LtOR/_new  2025-12-25 19:57:46.179546026 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           lxqt-panel
-Version:        2.3.1
+Version:        2.3.2
 Release:        0
 Summary:        LXQt desktop panel
 License:        LGPL-2.1-or-later

++++++ lxqt-panel-2.3.1.tar.xz -> lxqt-panel-2.3.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lxqt-panel-2.3.1/CHANGELOG 
new/lxqt-panel-2.3.2/CHANGELOG
--- old/lxqt-panel-2.3.1/CHANGELOG      2025-11-25 18:39:35.000000000 +0100
+++ new/lxqt-panel-2.3.2/CHANGELOG      2025-12-21 18:58:50.000000000 +0100
@@ -1,3 +1,7 @@
+lxqt-panel-2.3.2 / 2025-12-21
+==============================
+ * Used `QPointer` for handling wlroots desktops to prevent dangling pointers, 
especially with bad compositor codes (previously, Hyprland could make the panel 
crash).
+
 lxqt-panel-2.3.1 / 2025-11-25
 ==============================
  * Fixed build failure with Qt < 6.8.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lxqt-panel-2.3.1/CMakeLists.txt 
new/lxqt-panel-2.3.2/CMakeLists.txt
--- old/lxqt-panel-2.3.1/CMakeLists.txt 2025-11-25 18:39:35.000000000 +0100
+++ new/lxqt-panel-2.3.2/CMakeLists.txt 2025-12-21 18:58:50.000000000 +0100
@@ -48,7 +48,7 @@
 endif()
 
 # Patch Version
-set(LXQT_PANEL_PATCH_VERSION 1)
+set(LXQT_PANEL_PATCH_VERSION 2)
 set(LXQT_PANEL_VERSION 
${LXQT_MAJOR_VERSION}.${LXQT_MINOR_VERSION}.${LXQT_PANEL_PATCH_VERSION})
 add_definitions("-DLXQT_PANEL_VERSION=\"${LXQT_PANEL_VERSION}\"")
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/lxqt-panel-2.3.1/panel/backends/wayland/wlroots/workspace.cpp 
new/lxqt-panel-2.3.2/panel/backends/wayland/wlroots/workspace.cpp
--- old/lxqt-panel-2.3.1/panel/backends/wayland/wlroots/workspace.cpp   
2025-11-25 18:39:35.000000000 +0100
+++ new/lxqt-panel-2.3.2/panel/backends/wayland/wlroots/workspace.cpp   
2025-12-21 18:58:50.000000000 +0100
@@ -6,7 +6,7 @@
 #include <private/qwaylandscreen_p.h>
 
 /** ext_workspace_handle_v1 <-> WorkspaceHandleV1 map */
-QMap<struct ::ext_workspace_handle_v1*, LXQt::Taskbar::WorkspaceHandleV1*> 
workspaceMap;
+QMap<struct ::ext_workspace_handle_v1*, 
QPointer<LXQt::Taskbar::WorkspaceHandleV1>> workspaceMap;
 QList<LXQt::Taskbar::WorkspaceGroupHandleV1*> workspaceGroups;
 
 /**
@@ -66,9 +66,10 @@
                 if (wg->outputs().contains(output))
                 {
                     const auto workspaces = wg->workspaces();
-                    for (WorkspaceHandleV1 *ws : workspaces)
+                    for (const auto& ws : workspaces)
                     {
-                        map[ws->coordinates()] = ws;
+                        if (ws)
+                            map[ws->coordinates()] = ws;
                     }
                     break;
                 }
@@ -107,9 +108,10 @@
                     if (wg->outputs().contains(output))
                     {
                         const auto workspaces = wg->workspaces();
-                        for (WorkspaceHandleV1 *ws : workspaces)
+                        for (const auto& ws : workspaces)
                         {
-                            map[ws->coordinates()] = ws;
+                            if (ws)
+                                map[ws->coordinates()] = ws;
                         }
                         break;
                     }
@@ -148,9 +150,10 @@
                 if (wg->outputs().contains(output))
                 {
                     const auto workspaces = wg->workspaces();
-                    for (WorkspaceHandleV1 *ws : workspaces)
+                    for (const auto& ws : workspaces)
                     {
-                        map[ws->coordinates()] = ws;
+                        if (ws)
+                            map[ws->coordinates()] = ws;
                     }
                     break;
                 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/lxqt-panel-2.3.1/panel/backends/wayland/wlroots/workspace.hpp 
new/lxqt-panel-2.3.2/panel/backends/wayland/wlroots/workspace.hpp
--- old/lxqt-panel-2.3.1/panel/backends/wayland/wlroots/workspace.hpp   
2025-11-25 18:39:35.000000000 +0100
+++ new/lxqt-panel-2.3.2/panel/backends/wayland/wlroots/workspace.hpp   
2025-12-21 18:58:50.000000000 +0100
@@ -4,6 +4,7 @@
 #include <QString>
 #include <QList>
 #include <QScreen>
+#include <QPointer>
 
 #include <string>
 #include "wayland-ext-workspace-v1-client-protocol.h"
@@ -73,7 +74,7 @@
         return m_outputs;
     }
 
-    QList<WorkspaceHandleV1*> workspaces() const {
+    QList<QPointer<WorkspaceHandleV1>> workspaces() const {
         return m_workspaces;
     }
 
@@ -108,7 +109,7 @@
     uint32_t m_supported_capabilities;
 
     /** Track workspaces that are a part of this workspace group */
-    QList<WorkspaceHandleV1*> m_workspaces;
+    QList<QPointer<WorkspaceHandleV1>> m_workspaces;
 };
 
 class LXQt::Taskbar::WorkspaceHandleV1 : public QObject, public 
QtWayland::ext_workspace_handle_v1

Reply via email to