diff options
Diffstat (limited to 'redhat/kdepim')
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] |