components/mutt/patches/6982855-imap-segfault-fix.patch
author Mike Sullivan <Mike.Sullivan@Oracle.COM>
Wed, 29 Aug 2012 11:05:56 -0700
changeset 957 255465c5756f
parent 384 cef5d5e02ade
permissions -rw-r--r--
Close of build 04.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
384
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
     1
Index: imap/message.c
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
     2
===================================================================
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
     3
--- mutt-1.5.21.orig/imap/message.c	(revision 6121:6572e8bcd723)
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
     4
+++ mutt-1.5.21/imap/message.c	(revision 6185:0e4f1782ea2e)
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
     5
@@ -66,5 +66,5 @@
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
     6
   FILE *fp;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
     7
   char tempfile[_POSIX_PATH_MAX];
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
     8
-  int msgno, idx;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
     9
+  int msgno, idx = msgbegin - 1;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    10
   IMAP_HEADER h;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    11
   IMAP_STATUS* status;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    12
@@ -186,5 +186,5 @@
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    13
         }
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    14
 
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    15
-        idx = h.sid - 1;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    16
+        idx++;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    17
         ctx->hdrs[idx] = imap_hcache_get (idata, h.data->uid);
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    18
         if (ctx->hdrs[idx])
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    19
@@ -212,4 +212,5 @@
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    20
           imap_free_header_data((void**) (void*) &h.data);
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    21
           evalhc = 0;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    22
+          idx--;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    23
         }
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    24
       }
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    25
@@ -274,4 +275,5 @@
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    26
         dprint (2, (debugfile, "msg_fetch_header: ignoring fetch response with no body\n"));
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    27
         mfhrc = -1;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    28
+        msgend--;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    29
         continue;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    30
       }
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    31
@@ -280,5 +282,5 @@
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    32
       fputs ("\n\n", fp);
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    33
 
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    34
-      idx = h.sid - 1;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    35
+      idx++;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    36
       if (idx > msgend)
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    37
       {
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    38
@@ -286,4 +288,5 @@
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    39
                     "unknown message number %d\n", h.sid));
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    40
         mfhrc = -1;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    41
+        idx--;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    42
         continue;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    43
       }
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    44
@@ -293,4 +296,5 @@
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    45
 	dprint (2, (debugfile, "imap_read_headers: message %d is not new\n",
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    46
 		    h.sid));
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    47
+        idx--;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    48
 	continue;
cef5d5e02ade 6982855 mutt segfault: mx_update_context+0x32()
Marcel Telka <marcel.telka@oracle.com>
parents:
diff changeset
    49
       }