summaryrefslogtreecommitdiffstats
path: root/redhat/kdepim/kdepim-3.5.13-fix_segv.patch
blob: 10b071c464ca56a4cc7cc43717e7b8a820953dd4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
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);
+	  }
     }
   }