summaryrefslogtreecommitdiffstats
path: root/redhat/kdepim
diff options
context:
space:
mode:
Diffstat (limited to 'redhat/kdepim')
-rw-r--r--redhat/kdepim/kdepim-3.5.13-fix_kio_imap4_addquotes.patch61
-rw-r--r--redhat/kdepim/kdepim-3.5.13-fix_kio_imap4_infinite_loop.patch17
-rw-r--r--redhat/kdepim/kdepim-3.5.13-fix_knotes_after_restored.patch21
-rw-r--r--redhat/kdepim/kdepim-3.5.13-fix_knotes_on_suspend.patch20
-rw-r--r--redhat/kdepim/kdepim-3.5.13-fix_linear_alphabet.patch71
-rw-r--r--redhat/kdepim/kdepim-3.5.13-fix_segv.patch33
-rw-r--r--redhat/kdepim/kdepim-3.5.13-fix_systray_count.patch20
-rw-r--r--redhat/kdepim/trinity-kdepim-3.5.13.spec53
8 files changed, 289 insertions, 7 deletions
diff --git a/redhat/kdepim/kdepim-3.5.13-fix_kio_imap4_addquotes.patch b/redhat/kdepim/kdepim-3.5.13-fix_kio_imap4_addquotes.patch
new file mode 100644
index 000000000..debb6ebd5
--- /dev/null
+++ b/redhat/kdepim/kdepim-3.5.13-fix_kio_imap4_addquotes.patch
@@ -0,0 +1,61 @@
+--- kdepim/libkmime/kmime_util.cpp.addquotes 2012-05-28 22:58:31.257167175 +0200
++++ kdepim/libkmime/kmime_util.cpp 2012-05-29 20:02:19.679233274 +0200
+@@ -436,49 +436,26 @@
+
+ void removeQuots(TQCString &str)
+ {
+- bool inQuote=false;
+-
+- for (int i=0; i < (int)str.length(); i++) {
+- if (str[i] == '"') {
+- str.remove(i,1);
+- i--;
+- inQuote = !inQuote;
+- } else {
+- if (inQuote && (str[i] == '\\'))
+- str.remove(i,1);
+- }
+- }
++ str.replace(TQRegExp("\\\""), "\"");
++ str.replace(TQRegExp("\\\\"), "\\");
+ }
+
+
+ void removeQuots(TQString &str)
+ {
+- bool inQuote=false;
+-
+- for (int i=0; i < (int)str.length(); i++) {
+- if (str[i] == '"') {
+- str.remove(i,1);
+- i--;
+- inQuote = !inQuote;
+- } else {
+- if (inQuote && (str[i] == '\\'))
+- str.remove(i,1);
+- }
+- }
++ str.replace(TQRegExp("\\\""), "\"");
++ str.replace(TQRegExp("\\\\"), "\\");
+ }
+
+
+ void addQuotes(TQCString &str, bool forceQuotes)
+ {
+ bool needsQuotes=false;
+- for (unsigned int i=0; i < str.length(); i++) {
+- if (strchr("()<>@,.;:[]=\\\"",str[i])!=0)
+- needsQuotes = true;
+- if (str[i]=='\\' || str[i]=='\"') {
+- str.insert(i, '\\');
+- i++;
+- }
+- }
++ if ( TQString( str ) .contains( TQRegExp( TQString( "\"|\\\\|=|\\]|\\[|:|;|,|\\.|,|@|<|>|\\)|\\(" ) ) ) )
++ needsQuotes = true;
++
++ str.replace(TQRegExp("\\"), "\\\\");
++ str.replace(TQRegExp("\""), "\\\"");
+
+ if (needsQuotes || forceQuotes) {
+ str.insert(0,'\"');
diff --git a/redhat/kdepim/kdepim-3.5.13-fix_kio_imap4_infinite_loop.patch b/redhat/kdepim/kdepim-3.5.13-fix_kio_imap4_infinite_loop.patch
new file mode 100644
index 000000000..90e0a1269
--- /dev/null
+++ b/redhat/kdepim/kdepim-3.5.13-fix_kio_imap4_infinite_loop.patch
@@ -0,0 +1,17 @@
+--- kdepim/kioslaves/imap4/imapparser.cc.ORI 2012-05-27 23:40:50.101207608 +0200
++++ kdepim/kioslaves/imap4/imapparser.cc 2012-05-27 23:43:23.264547024 +0200
+@@ -277,11 +277,11 @@
+ }
+ cmd = sendCommand (new imapCommand ("AUTHENTICATE", firstCommand.latin1()));
+
+- while ( true )
++ int pl = 0;
++ while ( pl != -1 && !cmd->isComplete () )
+ {
+ //read the next line
+- while (parseLoop() == 0) ;
+- if ( cmd->isComplete() ) break;
++ while ((pl = parseLoop()) == 0) ;
+
+ if (!continuation.isEmpty())
+ {
diff --git a/redhat/kdepim/kdepim-3.5.13-fix_knotes_after_restored.patch b/redhat/kdepim/kdepim-3.5.13-fix_knotes_after_restored.patch
new file mode 100644
index 000000000..25d6ef993
--- /dev/null
+++ b/redhat/kdepim/kdepim-3.5.13-fix_knotes_after_restored.patch
@@ -0,0 +1,21 @@
+commit 533f494f46d65be366aee3e9973b674320e46bc8
+Author: Darrell Anderson <humanreadable@yahoo.com>
+Date: 1336698215 -0500
+
+ Fix knotes not appearing on the desktop when a session is restored.
+ Thanks to Slavek Banko.
+ This resolves bug report 987.
+
+diff --git a/knotes/knote.cpp b/knotes/knote.cpp
+index 182aee8..08c24b8 100644
+--- a/knotes/knote.cpp
++++ b/knotes/knote.cpp
+@@ -765,7 +765,7 @@ void KNote::slotClose()
+ m_editor->clearFocus();
+ m_config->setHideNote( true );
+ m_config->setPosition( pos() );
+- m_config->writeConfig();
++
+ // just hide the note so it's still available from the dock window
+ hide();
+ }
diff --git a/redhat/kdepim/kdepim-3.5.13-fix_knotes_on_suspend.patch b/redhat/kdepim/kdepim-3.5.13-fix_knotes_on_suspend.patch
new file mode 100644
index 000000000..7de27843b
--- /dev/null
+++ b/redhat/kdepim/kdepim-3.5.13-fix_knotes_on_suspend.patch
@@ -0,0 +1,20 @@
+commit c48253af15badc7a81db7ea2f22465405a897110
+Author: Slávek Banko <slavek.banko@axis.cz>
+Date: 1337752740 +0200
+
+ Fix knotes to not close notes during saving session.
+ This closes Bug 987
+
+diff --git a/knotes/knote.cpp b/knotes/knote.cpp
+index 08c24b8..e68c8ca 100644
+--- a/knotes/knote.cpp
++++ b/knotes/knote.cpp
+@@ -1267,6 +1267,8 @@ void KNote::resizeEvent( TQResizeEvent *qre )
+
+ void KNote::closeEvent( TQCloseEvent *event )
+ {
++ if(kapp->sessionSaving())
++ return;
+ event->ignore(); //We don't want to close (and delete the widget). Just hide it
+ slotClose();
+ }
diff --git a/redhat/kdepim/kdepim-3.5.13-fix_linear_alphabet.patch b/redhat/kdepim/kdepim-3.5.13-fix_linear_alphabet.patch
new file mode 100644
index 000000000..610e62306
--- /dev/null
+++ b/redhat/kdepim/kdepim-3.5.13-fix_linear_alphabet.patch
@@ -0,0 +1,71 @@
+commit 80bc593eb31b3162fd870ee64eceb0ec90fac15c
+Author: Timothy Pearson <kb9vqf@pearsoncomputing.net>
+Date: 1327531088 -0600
+
+ Fix linear alphabet string errors
+
+diff --git a/NewsLog.txt b/NewsLog.txt
+index bc32c09..cc5cdc4 100644
+--- a/NewsLog.txt
++++ b/NewsLog.txt
+@@ -1960,7 +1960,7 @@ Bugfixes
+ deleted without ever having been initialised. Also init some other vars ASAP. (700035)
+ - kolab/issue1712 Update revision when adding new attendees.(663228)
+ - kolab/issue1672 Make sure to open the folder when saving a single message as well.(664661)
+- - Fix lack of double-quotes around folder name, making GEQUOTAROOT fail on folders with a space in the
++ - Fix lack of double-quotes around folder name, making GETQUOTAROOT fail on folders with a space in the
+ name.(665276)
+ - Port the ability to add and remove subfolders from korganizer's resource view from proko2. (665274)
+ - kolab/issue1721 Don't exit when the popup menu is canceled.(665679)
+diff --git a/kioslaves/imap4/rfcdecoder.cc b/kioslaves/imap4/rfcdecoder.cc
+index f91e9f8..08b641b 100644
+--- a/kioslaves/imap4/rfcdecoder.cc
++++ b/kioslaves/imap4/rfcdecoder.cc
+@@ -37,7 +37,7 @@
+ // adapted to QT-Toolkit by Sven Carstens <s.carstens@gmx.de> 2000
+
+ static unsigned char base64chars[] =
+- "ABCDEFGHIJKLMNOPTQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+,";
++ "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+,";
+ #define UNDEFINED 64
+ #define MAXLINE 76
+
+diff --git a/libkmime/kmime_util.cpp b/libkmime/kmime_util.cpp
+index d4c8943..03a14e9 100644
+--- a/libkmime/kmime_util.cpp
++++ b/libkmime/kmime_util.cpp
+@@ -337,7 +337,7 @@ TQCString encodeRFC2047String(const TQString &src, const char *charset,
+
+ TQCString uniqueString()
+ {
+- static char chars[] = "0123456789abcdefghijklmnopqrstuvxyzABCDEFGHIJKLMNOPTQRSTUVWXYZ";
++ static char chars[] = "0123456789abcdefghijklmnopqrstuvxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
+ time_t now;
+ TQCString ret;
+ char p[11];
+diff --git a/mimelib/dw_cte.cpp b/mimelib/dw_cte.cpp
+index 127a29a..4498597 100644
+--- a/mimelib/dw_cte.cpp
++++ b/mimelib/dw_cte.cpp
+@@ -353,7 +353,7 @@ static int to_cr(const char* srcBuf, size_t srcLen, char* destBuf,
+ }
+
+
+-static char base64tab[] = "ABCDEFGHIJKLMNOPTQRSTUVWXYZ"
++static char base64tab[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
+ "abcdefghijklmnopqrstuvwxyz0123456789+/";
+
+ static char base64idx[128] = {
+diff --git a/mimelib/mediatyp.cpp b/mimelib/mediatyp.cpp
+index 87ee345..7c766fe 100644
+--- a/mimelib/mediatyp.cpp
++++ b/mimelib/mediatyp.cpp
+@@ -231,7 +231,7 @@ void DwMediaType::SetBoundary(const DwString& aStr)
+ void DwMediaType::CreateBoundary(unsigned aLevel)
+ {
+ // Create a random printable string and set it as the boundary parameter
+- static const char c[] = "ABCDEFGHIJKLMNOPTQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
++ static const char c[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
+ const int cLen = 64;
+ char buf[80];
+ strcpy(buf, "Boundary-");
diff --git a/redhat/kdepim/kdepim-3.5.13-fix_segv.patch b/redhat/kdepim/kdepim-3.5.13-fix_segv.patch
new file mode 100644
index 000000000..10b071c46
--- /dev/null
+++ b/redhat/kdepim/kdepim-3.5.13-fix_segv.patch
@@ -0,0 +1,33 @@
+--- kdepim/kioslaves/imap4/imapparser.cc.segv 2012-05-29 20:22:52.187840588 +0200
++++ kdepim/kioslaves/imap4/imapparser.cc 2012-05-29 20:29:30.723545443 +0200
+@@ -1354,10 +1354,10 @@
+ label = parseOneWordC (inWords);
+ }
+
+- if (inWords[0] == ')')
++ if (!inWords.isEmpty () && inWords[0] == ')')
+ inWords.pos++;
+ }
+- if (inWords[0] == ']')
++ if (!inWords.isEmpty () && inWords[0] == ']')
+ inWords.pos++;
+ skipWS (inWords);
+
+@@ -1479,6 +1479,7 @@
+ {
+ TQCString word = parseLiteralC(inWords, false, true);
+
++ if(!word.isEmpty()) {
+ switch (word[0])
+ {
+ case 'E':
+@@ -1602,6 +1603,9 @@
+ parseLiteralC(inWords);
+ break;
+ }
++ } else {
++ parseLiteralC(inWords);
++ }
+ }
+ }
+
diff --git a/redhat/kdepim/kdepim-3.5.13-fix_systray_count.patch b/redhat/kdepim/kdepim-3.5.13-fix_systray_count.patch
new file mode 100644
index 000000000..6e5d983fe
--- /dev/null
+++ b/redhat/kdepim/kdepim-3.5.13-fix_systray_count.patch
@@ -0,0 +1,20 @@
+commit 40c435e566bcfddd3fd69b55efec786b1162a8be
+Author: Slávek Banko <slavek.banko@axis.cz>
+Date: 1337997785 +0200
+
+ Fix KMail counting of unread messages in the system tray icon
+ Thanks to Francois Andriot
+
+diff --git a/kmail/kmsystemtray.cpp b/kmail/kmsystemtray.cpp
+index 001453a..d36bd3e 100644
+--- a/kmail/kmsystemtray.cpp
++++ b/kmail/kmsystemtray.cpp
+@@ -493,7 +493,7 @@ void KMSystemTray::updateNewMessages()
+ * our last known version, and adjust mCount with that difference */
+ else
+ {
+- int diff = unread - it.data();
++ int diff = unread - unread_it.data();
+ mCount += diff;
+ }
+
diff --git a/redhat/kdepim/trinity-kdepim-3.5.13.spec b/redhat/kdepim/trinity-kdepim-3.5.13.spec
index 704718664..5a227ca79 100644
--- a/redhat/kdepim/trinity-kdepim-3.5.13.spec
+++ b/redhat/kdepim/trinity-kdepim-3.5.13.spec
@@ -19,7 +19,7 @@ BuildRequires: cmake >= 2.8
Name: trinity-kdepim
Version: 3.5.13
-Release: 4%{?dist}%{?_variant}
+Release: 6%{?dist}%{?_variant}
License: GPL
Group: Applications/Productivity
@@ -33,12 +33,23 @@ Source0: kdepim-%{version}.tar.gz
# [kdepim] Fix compilation with GCC 4.7 [Bug #958]
Patch1: kdepim-3.5.13-fix_gcc47_compilation.patch
-
# [tdepim] Reverse patch from GIT hash 33e649c9. [Bug #406] [Commit #2d5f15c8]
Patch2: kdepim-3.5.13-fix_check_mail.patch
-
# [tdepim] Fix kmail composer crash [Bug #953]
Patch3: kdepim-3.5.13-fix_composer_crash.patch
+# [tdepim] Fix KMail counting of unread messages in the system tray icon [Commit #40c435e5]
+Patch4: kdepim-3.5.13-fix_systray_count.patch
+# [tdepim] Fix knotes not appearing on the desktop when a session is restored. [Bug #987] [Commit #533f494f]
+Patch5: kdepim-3.5.13-fix_knotes_after_restored.patch
+# [tdepim] Fix knotes to not close notes during saving session. [Bug #987] [Commit #c48253af]
+Patch6: kdepim-3.5.13-fix_knotes_on_suspend.patch
+# [tdepim] Fix linear alphabet string errors [Bug 635] [Commit #80bc593e]
+Patch7: kdepim-3.5.13-fix_linear_alphabet.patch
+# [tdepim] Fix infinite loop on IMAP4 authentication failure [Bug #1007]
+Patch8: kdepim-3.5.13-fix_kio_imap4_infinite_loop.patch
+# [tdepim] Fix infinite loop on kmime_utils addquotes
+Patch9: kdepim-3.5.13-fix_kio_imap4_addquotes.patch
+Patch10: kdepim-3.5.13-fix_segv.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -50,7 +61,11 @@ BuildRequires: libgpg-error-devel
BuildRequires: flex
BuildRequires: libical-devel
BuildRequires: boost-devel
-BuildRequires: curl-devel
+BuildRequires: cyrus-sasl-devel
+BuildRequires: libXcomposite-devel
+BuildRequires: pcre-devel
+BuildRequires: glib2-devel
+BuildRequires: gcc-c++ make
BuildRequires: libcaldav-devel
BuildRequires: libcarddav-devel
@@ -61,10 +76,11 @@ BuildRequires: gnokii-devel
%if 0%{?fedora} >= 15
BuildRequires: flex-static
-%else
-%if 0%{?rhel} <= 5
-BuildRequires: trinity-libcurl-devel
%endif
+%if 0%{?rhel} >= 0 && 0%{?rhel} <= 5
+BuildRequires: trinity-libcurl-devel
+%else
+BuildRequires: curl-devel
%endif
Requires: trinity-kdelibs
@@ -88,6 +104,14 @@ Development files for %{name}.
%patch1 -p1 -b .gcc47
%patch2 -p1
%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1 -b .addquotes
+%patch10 -p1 -b .segv
+
%build
unset QTDIR || : ; . /etc/profile.d/qt.sh
@@ -133,6 +157,14 @@ export PATH="%{_bindir}:${PATH}"
%clean
%__rm -rf %{?buildroot}
+%post
+for f in crystalsvg hicolor locolor ; do
+ touch --no-create %{_datadir}/icons/${f} 2> /dev/null ||:
+ gtk-update-icon-cache -q %{_datadir}/icons/${f} 2> /dev/null ||:
+done
+update-desktop-database %{_datadir}/applications > /dev/null 2>&1 || :
+
+
%files
%defattr(-,root,root,-)
%{_bindir}/*
@@ -170,6 +202,13 @@ export PATH="%{_bindir}:${PATH}"
%{_datadir}/cmake/*.cmake
%changelog
+* Sun May 27 2012 Francois Andriot <francois.andriot@free.fr> - 3.5.13-5
+- Fix KMail counting of unread messages in the system tray icon [Commit #40c435e5]
+- Fix knotes not appearing on the desktop when a session is restored. [Bug #987] [Commit #533f494f]
+- Fix knotes to not close notes during saving session. [Bug #987] [Commit #c48253af]
+- Fix linear alphabet string errors [Bug 635] [Commit #80bc593e]
+- Fix infinite loop on IMAP4 authentication failure [Bug #1007]
+
* Wed Apr 25 2012 Francois Andriot <francois.andriot@free.fr> - 3.5.13-4
- Fix compilation with GCC 4.7 [Bug #958]
- Reverse patch from GIT hash 33e649c9. [Bug #406] [Commit #2d5f15c8]