Hello community,

here is the log from the commit of package kdepim3 for openSUSE:Factory checked 
in at 2012-06-05 15:32:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kdepim3 (Old)
 and      /work/SRC/openSUSE:Factory/.kdepim3.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kdepim3", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/kdepim3/kdepim3.changes  2012-05-29 
11:37:50.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.kdepim3.new/kdepim3.changes     2012-06-05 
15:32:05.000000000 +0200
@@ -1,0 +2,5 @@
+Mon Jun  4 06:38:39 UTC 2012 - [email protected]
+
+- add two IMAP patches from Trinity
+
+-------------------------------------------------------------------

New:
----
  kdepim-trinity-imap-optimize.patch
  kdepim-trinity-imap-segfault.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kdepim3.spec ++++++
--- /var/tmp/diff_new_pack.XJrx9e/_old  2012-06-05 15:32:07.000000000 +0200
+++ /var/tmp/diff_new_pack.XJrx9e/_new  2012-06-05 15:32:07.000000000 +0200
@@ -74,6 +74,8 @@
 Patch135:       kdepim-gentoo-composer_crash_fix.diff
 Patch136:       kdepim3-pardus-unbreak-imap.patch
 Patch137:       kdepim3-gcc47.patch
+Patch138:       kdepim-trinity-imap-optimize.patch
+Patch139:       kdepim-trinity-imap-segfault.patch
 Provides:       cryptplug
 Obsoletes:      cryptplug
 # authentification plugins can be useful
@@ -270,6 +272,8 @@
 %patch135 -p1
 %patch136
 %patch137 -p1
+%patch138 -p1
+%patch139 -p1
 . /etc/opt/kde3/common_options
 update_admin
 

++++++ kdepim-trinity-imap-optimize.patch ++++++
--- a/libkmime/kmime_util.cpp   2012-05-28 22:58:31.257167175 +0200
+++ b/libkmime/kmime_util.cpp   2012-05-29 20:02:19.679233274 +0200
@@ -436,49 +436,26 @@ 
 
 void removeQuots(QCString &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(QRegExp("\\\""), "\"");
+  str.replace(QRegExp("\\\\"), "\\");
 }
 
 
 void removeQuots(QString &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(QRegExp("\\\""), "\"");
+  str.replace(QRegExp("\\\\"), "\\");
 }
 
 
 void addQuotes(QCString &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 ( QString( str ) .contains( QRegExp( QString( 
"\"|\\\\|=|\\]|\\[|:|;|,|\\.|,|@|<|>|\\)|\\(" ) ) ) )
+    needsQuotes = true;
+
+  str.replace(QRegExp("\\"), "\\\\");
+  str.replace(QRegExp("\""), "\\\"");
 
   if (needsQuotes || forceQuotes) {
     str.insert(0,'\"');
++++++ kdepim-trinity-imap-segfault.patch ++++++
--- a/kioslaves/imap4/imapparser.cc     2012-05-29 20:22:52.187840588 +0200
+++ b/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 @@ 
     {
       QCString word = parseLiteralC(inWords, false, true);
 
+      if(!word.isEmpty()) {
       switch (word[0])
       {
       case 'E':
@@ -1602,6 +1603,9 @@ 
         parseLiteralC(inWords);
         break;
       }
+      } else {
+        parseLiteralC(inWords);
+         }
     }
   }
 
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to