Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package kf6-kcrash for openSUSE:Factory 
checked in at 2026-08-17 16:56:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kf6-kcrash (Old)
 and      /work/SRC/openSUSE:Factory/.kf6-kcrash.new.1258 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kf6-kcrash"

Mon Aug 17 16:56:21 2026 rev:30 rq:1371371 version:6.29.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/kf6-kcrash/kf6-kcrash.changes    2026-07-15 
16:35:16.981570734 +0200
+++ /work/SRC/openSUSE:Factory/.kf6-kcrash.new.1258/kf6-kcrash.changes  
2026-08-17 16:59:11.737462025 +0200
@@ -1,0 +2,13 @@
+Sun Aug  9 10:38:28 UTC 2026 - Christophe Marin <[email protected]>
+
+- Update to 6.29.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/frameworks/6/6.29.0
+- Changes since 6.28.0:
+  * Update dependency version to 6.29.0
+  * delete the char ptrs properly as arrays
+  * load platform details ahead of time (kde#518503)
+  * Update version to 6.29.0
+
+-------------------------------------------------------------------

Old:
----
  kcrash-6.28.0.tar.xz
  kcrash-6.28.0.tar.xz.sig

New:
----
  kcrash-6.29.0.tar.xz
  kcrash-6.29.0.tar.xz.sig

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

Other differences:
------------------
++++++ kf6-kcrash.spec ++++++
--- /var/tmp/diff_new_pack.h9ImNE/_old  2026-08-17 16:59:12.342483402 +0200
+++ /var/tmp/diff_new_pack.h9ImNE/_new  2026-08-17 16:59:12.343483437 +0200
@@ -19,11 +19,11 @@
 %define qt6_version 6.9.0
 
 %define rname kcrash
-# Full KF6 version (e.g. 6.28.0)
+# Full KF6 version (e.g. 6.29.0)
 %{!?_kf6_version: %global _kf6_version %{version}}
 %bcond_without released
 Name:           kf6-kcrash
-Version:        6.28.0
+Version:        6.29.0
 Release:        0
 Summary:        An application crash handler
 License:        LGPL-2.1-or-later


++++++ kcrash-6.28.0.tar.xz -> kcrash-6.29.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcrash-6.28.0/CMakeLists.txt 
new/kcrash-6.29.0/CMakeLists.txt
--- old/kcrash-6.28.0/CMakeLists.txt    2026-07-03 12:53:51.000000000 +0200
+++ new/kcrash-6.29.0/CMakeLists.txt    2026-08-07 22:39:52.000000000 +0200
@@ -1,14 +1,14 @@
 cmake_minimum_required(VERSION 3.29)
 
-set(KF_VERSION "6.28.0") # handled by release scripts
-set(KF_DEP_VERSION "6.28.0") # handled by release scripts
+set(KF_VERSION "6.29.0") # handled by release scripts
+set(KF_DEP_VERSION "6.29.0") # handled by release scripts
 project(KCrash VERSION ${KF_VERSION})
 
 set(CMAKE_CXX_STANDARD 20)
 set(CMAKE_CXX_STANDARD_REQUIRED ON)
 
 include(FeatureSummary)
-find_package(ECM 6.28.0  NO_MODULE)
+find_package(ECM 6.29.0  NO_MODULE)
 set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake 
Modules." URL "https://commits.kde.org/extra-cmake-modules";)
 feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND 
FATAL_ON_MISSING_REQUIRED_PACKAGES)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcrash-6.28.0/src/android/res/values-ia/strings.xml 
new/kcrash-6.29.0/src/android/res/values-ia/strings.xml
--- old/kcrash-6.28.0/src/android/res/values-ia/strings.xml     1970-01-01 
01:00:00.000000000 +0100
+++ new/kcrash-6.29.0/src/android/res/values-ia/strings.xml     2026-08-07 
22:39:52.000000000 +0200
@@ -0,0 +1,5 @@
+<?xml version='1.0' encoding='utf-8'?>
+<resources>
+  <string name="submit_dialog_title">Submitte reporto de fracasso</string>
+  <string name="submit_dialog_text">Tu vole submittee un reporto de fracasso 
automatic?</string>
+</resources>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcrash-6.28.0/src/kcrash.cpp 
new/kcrash-6.29.0/src/kcrash.cpp
--- old/kcrash-6.28.0/src/kcrash.cpp    2026-07-03 12:53:51.000000000 +0200
+++ new/kcrash-6.29.0/src/kcrash.cpp    2026-08-07 22:39:52.000000000 +0200
@@ -135,6 +135,11 @@
 std::unique_ptr<const DetailsHash> s_tags; // Sentry tags
 std::unique_ptr<const DetailsHash> s_extraData; // Sentry extra data
 std::unique_ptr<const DetailsHash> s_gpuContext; // Sentry gpu context
+// Mind that qstrdup uses new[] so we also need to delete[], that is why we 
declare these char[].
+std::unique_ptr<char[]> s_qtPlatform;
+#if HAVE_X11
+std::unique_ptr<char[]> s_x11Display;
+#endif
 
 QString bootId()
 {
@@ -150,6 +155,38 @@
 #endif
 }
 
+void loadPlatformDetails()
+{
+    // This entire function is only relevant for just-in-time debugging (JIT).
+    // When that gets removed this function can be removed as well.
+
+    const auto platformName = QGuiApplication::platformName().toUtf8();
+
+    if (platformName == "wayland-org.kde.kwin.qpa"_ba) {
+        s_qtPlatform.reset(qstrdup("wayland"));
+    } else {
+        s_qtPlatform.reset(qstrdup(platformName.constData()));
+    }
+
+#if HAVE_X11
+    if (platformName == "xcb"_ba) {
+        // start up on the correct display
+        char *display = nullptr;
+        if (qGuiApp) {
+            if (auto disp = 
qGuiApp->nativeInterface<QNativeInterface::QX11Application>()->display()) {
+                display = XDisplayString(disp);
+            }
+        }
+        if (!display) {
+            display = getenv("DISPLAY");
+        }
+        if (display) {
+            s_x11Display.reset(qstrdup(display));
+        }
+    }
+#endif
+}
+
 } // namespace
 
 static QStringList libexecPaths()
@@ -220,6 +257,7 @@
         const QString path = QCoreApplication::applicationFilePath();
         s_appFilePath.reset(qstrdup(qPrintable(path))); // This intentionally 
cannot be changed by the application!
         KCrash::setApplicationFilePath(path);
+        loadPlatformDetails();
     } else {
         qWarning() << "This process needs a QCoreApplication instance in order 
to use KCrash";
     }
@@ -537,28 +575,13 @@
 
         data.add("--kdeframeworksversion", KCRASH_VERSION_STRING);
 
-        const QByteArray platformName = 
QGuiApplication::platformName().toUtf8();
-        if (!platformName.isEmpty()) {
-            if (strcmp(platformName.constData(), "wayland-org.kde.kwin.qpa") 
== 0) { // redirect kwin's internal QPA to wayland proper
-                data.add("--platform", "wayland");
-            } else {
-                data.add("--platform", platformName.constData());
-            }
+        if (s_qtPlatform) {
+            data.add("--platform", s_qtPlatform.get());
         }
 
 #if HAVE_X11
-        if (platformName == QByteArrayLiteral("xcb")) {
-            // start up on the correct display
-            char *display = nullptr;
-            if (qGuiApp) {
-                if (auto disp = 
qGuiApp->nativeInterface<QNativeInterface::QX11Application>()->display()) {
-                    display = XDisplayString(disp);
-                }
-            }
-            if (!display) {
-                display = getenv("DISPLAY");
-            }
-            data.add("--display", display);
+        if (s_x11Display) {
+            data.add("--display", s_x11Display.get());
         }
 #endif
 

Reply via email to