1 |
commit: e46bfcf4f3372392777d08adf9a7e32e392a7655 |
2 |
Author: Elias Probst <mail <AT> eliasprobst <DOT> eu> |
3 |
AuthorDate: Sun Jul 31 19:46:20 2011 +0000 |
4 |
Commit: Elias Probst <mail <AT> eliasprobst <DOT> eu> |
5 |
CommitDate: Sun Jul 31 19:46:20 2011 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/kde.git;a=commit;h=e46bfcf4 |
7 |
|
8 |
[kde-base/kdeplasma-addons-4.7.0-r1] Added patch to prevent crashes of plasma-desktop on startup when using grid layout (see KDE Bug#278222). |
9 |
|
10 |
--- |
11 |
...plasma-addons-4.7.0-groupingdesktop-crash.patch | 69 ++++++++++++++++++ |
12 |
.../kdeplasma-addons-4.7.0-r1.ebuild | 73 ++++++++++++++++++++ |
13 |
2 files changed, 142 insertions(+), 0 deletions(-) |
14 |
|
15 |
diff --git a/kde-base/kdeplasma-addons/files/kdeplasma-addons-4.7.0-groupingdesktop-crash.patch b/kde-base/kdeplasma-addons/files/kdeplasma-addons-4.7.0-groupingdesktop-crash.patch |
16 |
new file mode 100644 |
17 |
index 0000000..587295a |
18 |
--- /dev/null |
19 |
+++ b/kde-base/kdeplasma-addons/files/kdeplasma-addons-4.7.0-groupingdesktop-crash.patch |
20 |
@@ -0,0 +1,69 @@ |
21 |
+commit 67b5c56e564f5052238bab38342a85e5f4af570b |
22 |
+Author: Christoph Feck <christoph@××××××.de> |
23 |
+Date: Sat Jul 30 19:15:28 2011 +0200 |
24 |
+ |
25 |
+ Fix assignment operator and add copy constructor |
26 |
+ |
27 |
+ This fixes the crash in Grid Desktop and Grouping Desktop. |
28 |
+ Thanks to Aaron Seigo for investigation and patch review. |
29 |
+ |
30 |
+ BUG: 278222 |
31 |
+ FIXED-IN: 4.7.1 |
32 |
+ |
33 |
+diff --git a/containments/groupingdesktop/lib/groupinfo.cpp b/containments/groupingdesktop/lib/groupinfo.cpp |
34 |
+index 2106cca..c945551 100644 |
35 |
+--- a/containments/groupingdesktop/lib/groupinfo.cpp |
36 |
++++ b/containments/groupingdesktop/lib/groupinfo.cpp |
37 |
+@@ -43,6 +43,12 @@ GroupInfo::GroupInfo(const QString &name, const QString &prettyName) |
38 |
+ d->prettyName = prettyName; |
39 |
+ } |
40 |
+ |
41 |
++GroupInfo::GroupInfo(const GroupInfo &other) |
42 |
++ : d(new GroupInfoPrivate()) |
43 |
++{ |
44 |
++ *d = *other.d; |
45 |
++} |
46 |
++ |
47 |
+ GroupInfo::~GroupInfo() |
48 |
+ { |
49 |
+ delete d; |
50 |
+@@ -78,13 +84,12 @@ QString GroupInfo::icon() const |
51 |
+ return d->icon; |
52 |
+ } |
53 |
+ |
54 |
+-GroupInfo GroupInfo::operator=(const GroupInfo &gi) |
55 |
++GroupInfo &GroupInfo::operator=(const GroupInfo &gi) |
56 |
+ { |
57 |
+- GroupInfo g(gi.name(), gi.prettyName()); |
58 |
+- g.setFormFactors(gi.formFactors()); |
59 |
+- g.setIcon(gi.icon()); |
60 |
+- |
61 |
+- return g; |
62 |
++ if (this != &gi) { |
63 |
++ *d = *gi.d; |
64 |
++ } |
65 |
++ return *this; |
66 |
+ } |
67 |
+ |
68 |
+ bool GroupInfo::operator==(const GroupInfo &gi) const |
69 |
+diff --git a/containments/groupingdesktop/lib/groupinfo.h b/containments/groupingdesktop/lib/groupinfo.h |
70 |
+index f8cc66f..320c800 100644 |
71 |
+--- a/containments/groupingdesktop/lib/groupinfo.h |
72 |
++++ b/containments/groupingdesktop/lib/groupinfo.h |
73 |
+@@ -31,6 +31,7 @@ class GroupInfo |
74 |
+ { |
75 |
+ public: |
76 |
+ explicit GroupInfo(const QString &name, const QString &prettyName = QString()); |
77 |
++ GroupInfo(const GroupInfo &other); |
78 |
+ ~GroupInfo(); |
79 |
+ void setFormFactors(QSet<Plasma::FormFactor> formFactors); |
80 |
+ void setIcon(const QString &icon); |
81 |
+@@ -40,7 +41,7 @@ class GroupInfo |
82 |
+ QSet<Plasma::FormFactor> formFactors() const; |
83 |
+ QString icon() const; |
84 |
+ |
85 |
+- GroupInfo operator=(const GroupInfo &gi); |
86 |
++ GroupInfo &operator=(const GroupInfo &gi); |
87 |
+ bool operator==(const GroupInfo &gi) const; |
88 |
+ bool operator<(const GroupInfo &gi) const; |
89 |
+ |
90 |
|
91 |
diff --git a/kde-base/kdeplasma-addons/kdeplasma-addons-4.7.0-r1.ebuild b/kde-base/kdeplasma-addons/kdeplasma-addons-4.7.0-r1.ebuild |
92 |
new file mode 100644 |
93 |
index 0000000..5e3b862 |
94 |
--- /dev/null |
95 |
+++ b/kde-base/kdeplasma-addons/kdeplasma-addons-4.7.0-r1.ebuild |
96 |
@@ -0,0 +1,73 @@ |
97 |
+# Copyright 1999-2011 Gentoo Foundation |
98 |
+# Distributed under the terms of the GNU General Public License v2 |
99 |
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kdeplasma-addons/kdeplasma-addons-4.7.0.ebuild,v 1.1 2011/07/27 14:04:49 alexxy Exp $ |
100 |
+ |
101 |
+EAPI=4 |
102 |
+ |
103 |
+KDE_SCM="git" |
104 |
+inherit kde4-base |
105 |
+ |
106 |
+DESCRIPTION="Extra Plasma applets and engines." |
107 |
+HOMEPAGE="http://www.kde.org/" |
108 |
+LICENSE="GPL-2 LGPL-2" |
109 |
+ |
110 |
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" |
111 |
+IUSE="attica debug desktopglobe exif qalculate qwt scim semantic-desktop" |
112 |
+ |
113 |
+# krunner is only needed to generate dbus interface for lancelot |
114 |
+COMMON_DEPEND=" |
115 |
+ app-crypt/qca:2 |
116 |
+ app-crypt/qca-ossl:2 |
117 |
+ $(add_kdebase_dep kdelibs 'semantic-desktop=') |
118 |
+ $(add_kdebase_dep krunner) |
119 |
+ $(add_kdebase_dep plasma-workspace 'semantic-desktop=') |
120 |
+ x11-misc/shared-mime-info |
121 |
+ attica? ( dev-libs/libattica ) |
122 |
+ desktopglobe? ( $(add_kdebase_dep marble) ) |
123 |
+ exif? ( $(add_kdebase_dep libkexiv2) ) |
124 |
+ qalculate? ( sci-libs/libqalculate ) |
125 |
+ qwt? ( x11-libs/qwt:5 ) |
126 |
+ scim? ( app-i18n/scim ) |
127 |
+ semantic-desktop? ( |
128 |
+ $(add_kdebase_dep kdepimlibs 'semantic-desktop') |
129 |
+ $(add_kdebase_dep plasma-workspace 'rss') |
130 |
+ ) |
131 |
+" |
132 |
+DEPEND="${COMMON_DEPEND} |
133 |
+ dev-cpp/eigen:2 |
134 |
+" |
135 |
+# kde-misc/plasmaboard: moved here in 4.3.65 |
136 |
+# kde-misc/qalculate-applet: since 4.4.0 |
137 |
+RDEPEND="${COMMON_DEPEND} |
138 |
+ !kde-misc/plasmaboard |
139 |
+ !kde-misc/qalculate-applet |
140 |
+" |
141 |
+ |
142 |
+PATCHES=( |
143 |
+ # needed for 4.7.0, can be removed in 4.7.1, see KDE Bug#278222 |
144 |
+ "${FILESDIR}/${P}-groupingdesktop-crash.patch" |
145 |
+) |
146 |
+ |
147 |
+# kdebase-data: some svg icons moved from data directly here. |
148 |
+add_blocker kdebase-data '<4.2.88' |
149 |
+ |
150 |
+src_prepare() { |
151 |
+ use semantic-desktop || epatch "${FILESDIR}/${PN}-4.6.2-optional-akonadi.patch" |
152 |
+ kde4-base_src_prepare |
153 |
+} |
154 |
+ |
155 |
+src_configure() { |
156 |
+ mycmakeargs=( |
157 |
+ -DDBUS_INTERFACES_INSTALL_DIR="${EPREFIX}/usr/share/dbus-1/interfaces/" |
158 |
+ $(cmake-utils_use_with attica LibAttica) |
159 |
+ $(cmake-utils_use_with desktopglobe Marble) |
160 |
+ $(cmake-utils_use_with exif Kexiv2) |
161 |
+ $(cmake-utils_use_with qalculate) |
162 |
+ $(cmake-utils_use_with qwt) |
163 |
+ $(cmake-utils_use_with semantic-desktop KdepimLibs) |
164 |
+ $(cmake-utils_use_with semantic-desktop Nepomuk) |
165 |
+ $(cmake-utils_use_with scim) |
166 |
+ ) |
167 |
+ |
168 |
+ kde4-base_src_configure |
169 |
+} |