1 |
commit: bf71cfc5c11670191d06eb63f2f1ad89756afe34 |
2 |
Author: Andreas K. Huettel (dilfridge) <mail <AT> akhuettel <DOT> de> |
3 |
AuthorDate: Sun Apr 3 08:12:58 2011 +0000 |
4 |
Commit: Andreas K. Huettel <dilfridge <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Apr 3 08:12:58 2011 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/kde.git;a=commit;h=bf71cfc5 |
7 |
|
8 |
[kde-base/systemsettings] Add upstream patch for flag widget crash |
9 |
|
10 |
(Portage version: 2.1.9.45/git/Linux x86_64, signed Manifest commit with key B6C5F7DE) |
11 |
|
12 |
--- |
13 |
.../files/systemsettings-4.6.2-flagcrash.patch | 34 ++++++++++++++++++++ |
14 |
.../systemsettings/systemsettings-4.6.2.ebuild | 5 ++- |
15 |
2 files changed, 38 insertions(+), 1 deletions(-) |
16 |
|
17 |
diff --git a/kde-base/systemsettings/files/systemsettings-4.6.2-flagcrash.patch b/kde-base/systemsettings/files/systemsettings-4.6.2-flagcrash.patch |
18 |
new file mode 100644 |
19 |
index 0000000..3e9fb7a |
20 |
--- /dev/null |
21 |
+++ b/kde-base/systemsettings/files/systemsettings-4.6.2-flagcrash.patch |
22 |
@@ -0,0 +1,34 @@ |
23 |
+commit 937c7245f0f4058d2b335d160617c1cdb2398cb7 |
24 |
+Author: Andriy Rysin <arysin@×××××.com> |
25 |
+Date: Sat Apr 2 22:27:37 2011 -0400 |
26 |
+ |
27 |
+ Fix null pointer crash when no rules found; add unit test |
28 |
+ BUG: 269961 |
29 |
+ |
30 |
+diff --git a/kcontrol/keyboard/flags.cpp b/kcontrol/keyboard/flags.cpp |
31 |
+index 24cd457..be70b1c 100644 |
32 |
+--- a/kcontrol/keyboard/flags.cpp |
33 |
++++ b/kcontrol/keyboard/flags.cpp |
34 |
+@@ -116,7 +116,7 @@ static QString getDisplayText(const QString& layout, const QString& variant, con |
35 |
+ { |
36 |
+ if( variant.isEmpty() ) |
37 |
+ return layout; |
38 |
+- if( rules->version == "1.0" ) |
39 |
++ if( rules == NULL || rules->version == "1.0" ) |
40 |
+ return i18nc("layout - variant", "%1 - %2", layout, variant); |
41 |
+ return variant; |
42 |
+ } |
43 |
+diff --git a/kcontrol/keyboard/tests/flags_test.cpp b/kcontrol/keyboard/tests/flags_test.cpp |
44 |
+index 0f84ce5..f4cec94 100644 |
45 |
+--- a/kcontrol/keyboard/tests/flags_test.cpp |
46 |
++++ b/kcontrol/keyboard/tests/flags_test.cpp |
47 |
+@@ -64,6 +64,9 @@ private Q_SLOTS: |
48 |
+ QVERIFY( flags->getLongText(layoutUnit1, rules).startsWith("USA - International") ); |
49 |
+ QCOMPARE( flags->getLongText(layoutUnit2, rules), QString("USA - other") ); |
50 |
+ |
51 |
++ rules = NULL; // when no rules found |
52 |
++ QCOMPARE( flags->getLongText(layoutUnit1, rules), QString("us - intl") ); |
53 |
++ |
54 |
+ flags->clearCache(); |
55 |
+ } |
56 |
+ |
57 |
|
58 |
diff --git a/kde-base/systemsettings/systemsettings-4.6.2.ebuild b/kde-base/systemsettings/systemsettings-4.6.2.ebuild |
59 |
index a6c2456..911a23c 100644 |
60 |
--- a/kde-base/systemsettings/systemsettings-4.6.2.ebuild |
61 |
+++ b/kde-base/systemsettings/systemsettings-4.6.2.ebuild |
62 |
@@ -54,7 +54,10 @@ KMEXTRACTONLY=" |
63 |
add_blocker kcontrol '<4.3.98' |
64 |
add_blocker konqueror '<4.4.70' |
65 |
|
66 |
-PATCHES=( "${FILESDIR}/${PN}-4.4.2-xinerama_cmake_automagic.patch" ) |
67 |
+PATCHES=( |
68 |
+ "${FILESDIR}/${PN}-4.4.2-xinerama_cmake_automagic.patch" |
69 |
+ "${FILESDIR}/${PN}-4.6.2-flagcrash.patch" |
70 |
+) |
71 |
|
72 |
src_unpack() { |
73 |
if use handbook; then |