[k3b] Added temporary workaround for #582764

Radek Novacek rnovacek at fedoraproject.org
Mon Aug 30 14:04:58 UTC 2010


commit 61375525679947361fd3c760eb82ac9390e0e682
Author: Radek Novacek <rnovacek at redhat.com>
Date:   Mon Aug 30 16:04:49 2010 +0200

    Added temporary workaround for #582764

 k3b-2.0_settings-crash.patch |   37 +++++++++++++++++++++++++++++++++++++
 k3b.spec                     |   11 ++++++++---
 2 files changed, 45 insertions(+), 3 deletions(-)
---
diff --git a/k3b-2.0_settings-crash.patch b/k3b-2.0_settings-crash.patch
new file mode 100644
index 0000000..a99b5c6
--- /dev/null
+++ b/k3b-2.0_settings-crash.patch
@@ -0,0 +1,37 @@
+Index: src/option/k3bpluginoptiontab.cpp
+===================================================================
+--- src/option/k3bpluginoptiontab.cpp	(revision 1168967)
++++ src/option/k3bpluginoptiontab.cpp	(working copy)
+@@ -43,12 +43,28 @@
+     layout->addWidget( label );
+     layout->addWidget( pluginSelector );
+ 
++    // find all categories
++    QHash<QString, QString> categoryNames;
++
+     foreach( K3b::Plugin* plugin, k3bcore->pluginManager()->plugins() ) {
+-        kDebug() << "Adding plugin" << plugin->pluginInfo().name();
+-        pluginSelector->addPlugins( QList<KPluginInfo>() << plugin->pluginInfo(),
++        categoryNames[ plugin->category() ] = plugin->categoryName();
++    }
++
++    // add all plugins in each category
++    foreach( const QString &category, categoryNames.keys() ) {
++        QList<KPluginInfo> plugins;
++
++        foreach( K3b::Plugin* plugin, k3bcore->pluginManager()->plugins() ) {
++            if ( plugin->category() == category ) {
++                plugins << plugin->pluginInfo();
++                kDebug() << "Adding plugin" << plugin->pluginInfo().name();
++            }
++        }
++        pluginSelector->addPlugins( plugins,
+                                     KPluginSelector::ReadConfigFile,
+-                                    plugin->categoryName(),
+-                                    plugin->category() );
++                                    categoryNames[ category ],
++                                    category
++                                  );
+     }
+ }
+ 
diff --git a/k3b.spec b/k3b.spec
index b9ec7a9..24d0300 100644
--- a/k3b.spec
+++ b/k3b.spec
@@ -8,7 +8,7 @@ Name:    k3b
 Summary: CD/DVD/Blu-ray burning application
 Epoch:   1
 Version: 2.0.0
-Release: 2%{?dist}
+Release: 3%{?dist}
 
 Group:   Applications/Archiving
 License: GPLv2+
@@ -18,7 +18,9 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
 # k3b app icon missing, https://bugzilla.redhat.com/show_bug.cgi?id=611272
 Source1: ox32-k3b.png
-
+# Patch for crashing on open settings, remove this temporary workaround when fixed (#582764)
+# Upstream bug: https://bugs.kde.org/show_bug.cgi?id=238819
+Patch0: k3b-2.0_settings-crash.patch
 # ie, where cdrecord and friends aren't present
 ExcludeArch: s390 s390x
 
@@ -84,7 +86,7 @@ Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
 
 %prep
 %setup -q -n %{name}-%{version}
-
+%patch0 -p0
 
 %build
 
@@ -181,6 +183,9 @@ update-mime-database %{_kde4_datadir}/mime &> /dev/null
 
 
 %changelog
+* Mon Aug 30 2010 Radek Novacek <rnovacek at redhat.com> - 1:2.0.0-3
+- Added temporary workaround for #582764
+
 * Tue Jul 06 2010 Rex Dieter <rdieter at fedoraproject.org> - 1:2.0.0-2
 - Missing Icon of k3b (#611272)
 


More information about the scm-commits mailing list