talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit c5fe49fd4a3a6d49ec5999d5fbd284e6b62177f6
parent 9c119dd9d566c890228aa067f4183ba9c96651b8
Author: Colin Leroy <colin@colino.net>
Date:   Thu, 13 Sep 2012 07:47:28 +0000

2012-09-13 [colin]	3.8.1cvs55

	* src/imap.c
		Maybe fix bug #2096, "MEMORY-ERROR w/
		Claws-Mail/IMAP and Lotus Domino". Use
		correct types for start/end and test if
		start is indeed before end.

Diffstat:
MChangeLog | 8++++++++
MPATCHSETS | 1+
Mconfigure.ac | 2+-
Msrc/imap.c | 11+++++------
4 files changed, 15 insertions(+), 7 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,11 @@ +2012-09-13 [colin] 3.8.1cvs55 + + * src/imap.c + Maybe fix bug #2096, "MEMORY-ERROR w/ + Claws-Mail/IMAP and Lotus Domino". Use + correct types for start/end and test if + start is indeed before end. + 2012-09-12 [mones] 3.8.1cvs54 * src/prefs_other.c diff --git a/PATCHSETS b/PATCHSETS @@ -4429,3 +4429,4 @@ ( cvs diff -u -r 1.60.2.149 -r 1.60.2.150 src/addressbook.c; cvs diff -u -r 1.6.10.27 -r 1.6.10.28 src/addrharvest.c; cvs diff -u -r 1.28.2.49 -r 1.28.2.50 src/addrindex.c; cvs diff -u -r 1.13.2.22 -r 1.13.2.23 src/addritem.c; cvs diff -u -r 1.382.2.611 -r 1.382.2.612 src/compose.c; cvs diff -u -r 1.1.2.28 -r 1.1.2.29 src/edittags.c; cvs diff -u -r 1.213.2.210 -r 1.213.2.211 src/folder.c; cvs diff -u -r 1.179.2.259 -r 1.179.2.260 src/imap.c; cvs diff -u -r 1.149.2.109 -r 1.149.2.110 src/inc.c; cvs diff -u -r 1.12.2.25 -r 1.12.2.26 src/ldif.c; cvs diff -u -r 1.274.2.350 -r 1.274.2.351 src/mainwindow.c; cvs diff -u -r 1.28.2.52 -r 1.28.2.53 src/mbox.c; cvs diff -u -r 1.83.2.194 -r 1.83.2.195 src/mimeview.c; cvs diff -u -r 1.6.10.21 -r 1.6.10.22 src/mutt.c; cvs diff -u -r 1.1.2.27 -r 1.1.2.28 src/partial_download.c; cvs diff -u -r 1.1.4.78 -r 1.1.4.79 src/prefs_filtering_action.c; cvs diff -u -r 1.30.2.73 -r 1.30.2.74 src/prefs_toolbar.c; cvs diff -u -r 1.1.2.38 -r 1.1.2.39 src/printing.c; cvs diff -u -r 1.47.2.58 -r 1.47.2.59 src/procheader.c; cvs diff -u -r 1.49.2.149 -r 1.49.2.150 src/procmime.c; cvs diff -u -r 1.150.2.126 -r 1.150.2.127 src/procmsg.c; cvs diff -u -r 1.395.2.452 -r 1.395.2.453 src/summaryview.c; cvs diff -u -r 1.96.2.247 -r 1.96.2.248 src/textview.c; cvs diff -u -r 1.36.2.200 -r 1.36.2.201 src/common/utils.c; cvs diff -u -r 1.1.4.119 -r 1.1.4.120 src/etpan/imap-thread.c; cvs diff -u -r 1.9.2.80 -r 1.9.2.81 src/gtk/gtkaspell.c; cvs diff -u -r 1.1.2.73 -r 1.1.2.74 src/plugins/pgpcore/sgpgme.c; ) > 3.8.1cvs52.patchset ( cvs diff -u -r 1.150.2.127 -r 1.150.2.128 src/procmsg.c; ) > 3.8.1cvs53.patchset ( cvs diff -u -r 1.1.2.46 -r 1.1.2.47 src/prefs_other.c; ) > 3.8.1cvs54.patchset +( cvs diff -u -r 1.179.2.260 -r 1.179.2.261 src/imap.c; ) > 3.8.1cvs55.patchset diff --git a/configure.ac b/configure.ac @@ -12,7 +12,7 @@ MINOR_VERSION=8 MICRO_VERSION=1 INTERFACE_AGE=0 BINARY_AGE=0 -EXTRA_VERSION=54 +EXTRA_VERSION=55 EXTRA_RELEASE= EXTRA_GTK2_VERSION= diff --git a/src/imap.c b/src/imap.c @@ -1713,7 +1713,7 @@ static GSList *flatten_mailimap_set(struct mailimap_set * set) { GSList *result = NULL; clistiter *list; - int start, end, t; + guint32 start, end, t; GSList *cur; if (!set || !set->set_list) @@ -1723,8 +1723,10 @@ static GSList *flatten_mailimap_set(struct mailimap_set * set) struct mailimap_set_item *item = (struct mailimap_set_item *)clist_content(list); start = item->set_first; end = item->set_last; - for (t = start; t <= end; t++) { - result = g_slist_prepend(result, GINT_TO_POINTER(t)); + if (start <= end) { + for (t = start; t <= end; t++) { + result = g_slist_prepend(result, GINT_TO_POINTER(t)); + } } } result = g_slist_reverse(result); @@ -5281,9 +5283,6 @@ static void imap_flags_hash_from_lep_uid_flags_tab(carray * list, GHashTable * tags_hash) { unsigned int i; - GSList * result; - - result = NULL; for(i = 0 ; i < carray_count(list) ; i += 3) { uint32_t * puid;