mirror of
https://git.FreeBSD.org/ports.git
synced 2025-02-05 11:35:01 +00:00
Maintainer update to version 1.5.21.
(also fixes handling of PGP messages containing CR/LF lines) PR: 150703, 150457, 150655 Submitted by: Udo.Schweigert@siemens.com (maintainer)
This commit is contained in:
parent
bc8a9cf0eb
commit
aa3d14f681
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=261798
@ -117,8 +117,8 @@
|
||||
#
|
||||
|
||||
PORTNAME= mutt-devel
|
||||
PORTVERSION= 1.5.20
|
||||
PORTREVISION?= 7
|
||||
PORTVERSION= 1.5.21
|
||||
PORTREVISION?= 0
|
||||
CATEGORIES+= mail ipv6
|
||||
.if defined(WITH_MUTT_NNTP)
|
||||
CATEGORIES+= news
|
||||
@ -145,9 +145,7 @@ PATCH_SITES+= http://www.mutt.org.ua/download/mutt-${VVV_PATCH_VERSION}/:vvv \
|
||||
ftp://ftp3.mutt.org.ua/pub/mutt/mutt-${VVV_PATCH_VERSION}/:vvv \
|
||||
http://home.woolridge.ca/mutt/patches/:dw \
|
||||
http://www.spinnaker.de/mutt/compressed/:rr \
|
||||
http://www.emaillab.org/mutt/${AC_PATCH_VERSION}/:jp \
|
||||
http://vc.org.ua/mutt/:vc \
|
||||
http://yz.kiev.ua/mutt/:vc
|
||||
http://www.emaillab.org/mutt/${AC_PATCH_VERSION}/:jp
|
||||
|
||||
MAINTAINER?= udo.schweigert@siemens.com
|
||||
COMMENT?= The Mongrel of Mail User Agents (development version)
|
||||
@ -178,7 +176,6 @@ SCRIPTS_ENV= WRKDIR="${WRKDIR}"
|
||||
|
||||
DW_PATCH_VERSION= 1.5.6
|
||||
AC_PATCH_VERSION= 1.5.9
|
||||
VC_PATCH_VERSION= 1.5.16
|
||||
DW_MBOX_PATCH_VERSION= 1.5.18
|
||||
.if !defined(VVV_PATCH_VERSION)
|
||||
VVV_PATCH_VERSION= ${PORTVERSION}
|
||||
@ -195,9 +192,6 @@ DW_MBOX_PATCH_VERSION= ${DW_PATCH_VERSION}
|
||||
.if !defined(AC_PATCH_VERSION)
|
||||
AC_PATCH_VERSION= ${PORTVERSION}
|
||||
.endif
|
||||
.if !defined(VC_PATCH_VERSION)
|
||||
VC_PATCH_VERSION= ${PORTVERSION}
|
||||
.endif
|
||||
.if defined(WITH_MUTT_MAILDIR_HEADER_CACHE)
|
||||
WITH_MUTT_IMAP_HEADER_CACHE= yes
|
||||
.endif
|
||||
@ -438,7 +432,8 @@ post-patch::
|
||||
.endif
|
||||
.endif
|
||||
.if defined(WITH_MUTT_GREETING_PATCH)
|
||||
PATCHFILES+= mutt-${VC_PATCH_VERSION}.vc.greeting:vc
|
||||
post-patch::
|
||||
@${PATCH} ${PATCH_ARGS} -p1 < ${PATCHDIR}/extra-patch-greeting
|
||||
.endif
|
||||
.if defined(WITH_MUTT_TRASH_PATCH)
|
||||
post-patch::
|
||||
@ -446,7 +441,7 @@ post-patch::
|
||||
.endif
|
||||
|
||||
WRKSRC= ${WRKDIR}/${DISTNAME:S/i$//}
|
||||
MAN1= mutt.1 mutt_dotlock.1 flea.1 muttbug.1
|
||||
MAN1= mutt.1 mutt_dotlock.1 flea.1 muttbug.1 smime_keys.1
|
||||
MAN5= muttrc.5
|
||||
.if !defined(WITHOUT_MUTT_MAILBOX_MANPAGES)
|
||||
MAN5+= mbox.5 mmdf.5
|
||||
|
@ -1,24 +1,15 @@
|
||||
MD5 (mutt/mutt-1.5.20.tar.gz) = 027cdd9959203de0c3c64149a7ee351c
|
||||
SHA256 (mutt/mutt-1.5.20.tar.gz) = 9579fc079d74ff5c89223ff09df402ef4e508ba8ca925c49e74aa09c02a9a796
|
||||
SIZE (mutt/mutt-1.5.20.tar.gz) = 3635047
|
||||
MD5 (mutt/patch-1.5.20.rr.compressed.gz) = 5e608027bda1fddc2bc38c03a560f0a9
|
||||
SHA256 (mutt/patch-1.5.20.rr.compressed.gz) = 87a7eed23ee234fcb3564e13bb034a3bfe858fb69677c7f8e7321446acf01034
|
||||
SIZE (mutt/patch-1.5.20.rr.compressed.gz) = 10190
|
||||
MD5 (mutt/patch-1.5.20.vvv.nntp.gz) = 80355166f8ae9bff064124f2d2e6870f
|
||||
SHA256 (mutt/patch-1.5.20.vvv.nntp.gz) = ea199ed303519ed816bded493cc4fe2985b497ec29b1c1c201f1428b1354260b
|
||||
SIZE (mutt/patch-1.5.20.vvv.nntp.gz) = 55449
|
||||
MD5 (mutt/patch-1.5.4.cd.ifdef.1) = a545036cdb55519154d0b35465f52daa
|
||||
SHA256 (mutt/patch-1.5.4.cd.ifdef.1) = 7d11892bcc688bbc82b5996ca0fda2d4446d8e928bec50b2731f8a3a5d9be373
|
||||
SIZE (mutt/patch-1.5.4.cd.ifdef.1) = 3545
|
||||
MD5 (mutt/patch-1.5.20.vvv.initials.gz) = c71ebc64f20f516f45168530d57f6c21
|
||||
SHA256 (mutt/patch-1.5.20.vvv.initials.gz) = fc2cf1dadfab02545116fc70855cfe14f4efd8e1a32b9a6c366fc5e09bdafd23
|
||||
SIZE (mutt/patch-1.5.20.vvv.initials.gz) = 690
|
||||
MD5 (mutt/patch-1.5.20.vvv.quote.gz) = 1d6213598d354942006f17b2c46720f2
|
||||
SHA256 (mutt/patch-1.5.20.vvv.quote.gz) = 7f3ea7999f00738c2dab0e67d69d76d354d14d0615c00784233e6d1149cb749d
|
||||
SIZE (mutt/patch-1.5.20.vvv.quote.gz) = 1772
|
||||
MD5 (mutt/p0-patch-1.5.18.dw.mbox-hook.1) = ae70a6668e297bdc804b2673221b4727
|
||||
SHA256 (mutt/p0-patch-1.5.18.dw.mbox-hook.1) = 12b9f41476850a5e2eed2334be9326e4905e8a6d786740689b6966a5d285070c
|
||||
SIZE (mutt/p0-patch-1.5.18.dw.mbox-hook.1) = 6812
|
||||
MD5 (mutt/mutt-1.5.16.vc.greeting) = 4bd9beeb74d075e4418e86e8ed887aa0
|
||||
SHA256 (mutt/mutt-1.5.16.vc.greeting) = cf05aeab5f1813864aa72b68f59a579c46dacf2fbd8e5fd064b920012320b986
|
||||
SIZE (mutt/mutt-1.5.16.vc.greeting) = 4526
|
||||
MD5 (mutt/mutt-1.5.21.tar.gz) = a29db8f1d51e2f10c070bf88e8a553fd
|
||||
SHA256 (mutt/mutt-1.5.21.tar.gz) = 2141f36e8d0f4f71c9ca6780001e7cc679fe313e643953fc07f001223e67c4a0
|
||||
SIZE (mutt/mutt-1.5.21.tar.gz) = 3716886
|
||||
MD5 (mutt/patch-1.5.21.rr.compressed.gz) = 0632fd94c96b3e452144b730e3cf0fd3
|
||||
SHA256 (mutt/patch-1.5.21.rr.compressed.gz) = 5056b181222c4322667fd99a6314e80a4a8b4613357364d9deddef626136b4d9
|
||||
SIZE (mutt/patch-1.5.21.rr.compressed.gz) = 10133
|
||||
MD5 (mutt/patch-1.5.21.vvv.nntp.gz) = afcf40f7e53a016b953cbf6af27b3cd8
|
||||
SHA256 (mutt/patch-1.5.21.vvv.nntp.gz) = 514cb4c3404bb68fef08781c17be41c6cd1251d05442db4105c6258f0b9d4928
|
||||
SIZE (mutt/patch-1.5.21.vvv.nntp.gz) = 55611
|
||||
MD5 (mutt/patch-1.5.21.vvv.initials.gz) = 9444edd98d52e6f6a4fa17bcc3160a93
|
||||
SHA256 (mutt/patch-1.5.21.vvv.initials.gz) = ecce3643b04d1aced7085bca506896298bd56d991a5d1af057922c8358abf141
|
||||
SIZE (mutt/patch-1.5.21.vvv.initials.gz) = 691
|
||||
MD5 (mutt/patch-1.5.21.vvv.quote.gz) = 93185b8fdf8d12f13a7a65136204193c
|
||||
SHA256 (mutt/patch-1.5.21.vvv.quote.gz) = b0613d305932b31eaf005ee0740558d46561a6d7a333c97a00d34a1d0c1ef843
|
||||
SIZE (mutt/patch-1.5.21.vvv.quote.gz) = 1280
|
||||
|
@ -1,11 +1,11 @@
|
||||
--- doc/Makefile.am.orig2 Tue Mar 6 17:40:41 2007
|
||||
+++ doc/Makefile.am Tue Mar 6 17:42:51 2007
|
||||
@@ -42,7 +42,7 @@
|
||||
all: ../makedoc$(EXEEXT)
|
||||
$(MAKE) makedoc-all
|
||||
--- doc/Makefile.am.orig 2010-09-17 16:23:30.000000000 +0200
|
||||
+++ doc/Makefile.am 2010-09-17 16:25:01.000000000 +0200
|
||||
@@ -47,7 +47,7 @@
|
||||
|
||||
-makedoc-all: mutt.1 muttrc.man
|
||||
+makedoc-all: mutt.1 muttrc.man manual.html stamp-doc-chunked manual.txt
|
||||
all: makedoc-all
|
||||
|
||||
-makedoc-all: mutt.1 smime_keys.1 muttrc.man
|
||||
+makedoc-all: mutt.1 smime_keys.1 muttrc.man manual.html stamp-doc-chunked manual.txt
|
||||
|
||||
install-data-local: makedoc-all instdoc
|
||||
$(top_srcdir)/mkinstalldirs $(DESTDIR)$(mandir)/man1
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,252 +1,220 @@
|
||||
*** mutt-1.5.20-orig/buffy.c 2009-06-02 12:16:26.000000000 -0500
|
||||
--- mutt-1.5.20-patched/buffy.c 2009-06-19 22:37:02.000000000 -0500
|
||||
***************
|
||||
*** 159,164 ****
|
||||
--- 159,207 ----
|
||||
}
|
||||
}
|
||||
|
||||
+ static int buffy_compare_name(const void *a, const void *b) {
|
||||
+ const BUFFY *b1 = * (BUFFY * const *) a;
|
||||
+ const BUFFY *b2 = * (BUFFY * const *) b;
|
||||
+
|
||||
+ return mutt_strcoll(b1->path, b2->path);
|
||||
+ }
|
||||
+
|
||||
+ static BUFFY *buffy_sort(BUFFY *b)
|
||||
+ {
|
||||
+ BUFFY *tmp = b;
|
||||
+ int buffycount = 0;
|
||||
+ BUFFY **ary;
|
||||
+ int i;
|
||||
+
|
||||
+ if (!option(OPTSIDEBARSORT))
|
||||
+ return b;
|
||||
+
|
||||
+ for (; tmp != NULL; tmp = tmp->next)
|
||||
+ buffycount++;
|
||||
+
|
||||
+ ary = (BUFFY **) safe_calloc(buffycount, sizeof (*ary));
|
||||
+
|
||||
+ tmp = b;
|
||||
+ for (i = 0; tmp != NULL; tmp = tmp->next, i++) {
|
||||
+ ary[i] = tmp;
|
||||
+ }
|
||||
+
|
||||
+ qsort(ary, buffycount, sizeof(*ary), buffy_compare_name);
|
||||
+
|
||||
+ for (i = 0; i < buffycount - 1; i++) {
|
||||
+ ary[i]->next = ary[i+1];
|
||||
+ }
|
||||
+ ary[buffycount - 1]->next = NULL;
|
||||
+ for (i = 1; i < buffycount; i++) {
|
||||
+ ary[i]->prev = ary[i-1];
|
||||
+ }
|
||||
+ ary[0]->prev = NULL;
|
||||
+
|
||||
+ tmp = ary[0];
|
||||
+ free(ary);
|
||||
+ return tmp;
|
||||
+ }
|
||||
+
|
||||
BUFFY *mutt_find_mailbox (const char *path)
|
||||
{
|
||||
BUFFY *tmp = NULL;
|
||||
***************
|
||||
*** 271,276 ****
|
||||
--- 314,320 ----
|
||||
else
|
||||
(*tmp)->size = 0;
|
||||
}
|
||||
+ Incoming = buffy_sort(Incoming);
|
||||
return 0;
|
||||
}
|
||||
|
||||
***************
|
||||
*** 290,295 ****
|
||||
--- 334,340 ----
|
||||
char path[_POSIX_PATH_MAX];
|
||||
struct stat contex_sb;
|
||||
time_t t;
|
||||
+ CONTEXT *ctx;
|
||||
|
||||
sb.st_size=0;
|
||||
contex_sb.st_dev=0;
|
||||
***************
|
||||
*** 329,334 ****
|
||||
--- 374,381 ----
|
||||
|
||||
for (tmp = Incoming; tmp; tmp = tmp->next)
|
||||
{
|
||||
+ if ( tmp->new == 1 )
|
||||
--- orig/buffy.c.orig 2010-09-18 14:12:40.000000000 +0200
|
||||
+++ new/buffy.c 2010-09-18 14:17:36.000000000 +0200
|
||||
@@ -161,6 +161,49 @@
|
||||
}
|
||||
}
|
||||
|
||||
+static int buffy_compare_name(const void *a, const void *b) {
|
||||
+ const BUFFY *b1 = * (BUFFY * const *) a;
|
||||
+ const BUFFY *b2 = * (BUFFY * const *) b;
|
||||
+
|
||||
+ return mutt_strcoll(b1->path, b2->path);
|
||||
+}
|
||||
+
|
||||
+static BUFFY *buffy_sort(BUFFY *b)
|
||||
+{
|
||||
+ BUFFY *tmp = b;
|
||||
+ int buffycount = 0;
|
||||
+ BUFFY **ary;
|
||||
+ int i;
|
||||
+
|
||||
+ if (!option(OPTSIDEBARSORT))
|
||||
+ return b;
|
||||
+
|
||||
+ for (; tmp != NULL; tmp = tmp->next)
|
||||
+ buffycount++;
|
||||
+
|
||||
+ ary = (BUFFY **) safe_calloc(buffycount, sizeof (*ary));
|
||||
+
|
||||
+ tmp = b;
|
||||
+ for (i = 0; tmp != NULL; tmp = tmp->next, i++) {
|
||||
+ ary[i] = tmp;
|
||||
+ }
|
||||
+
|
||||
+ qsort(ary, buffycount, sizeof(*ary), buffy_compare_name);
|
||||
+
|
||||
+ for (i = 0; i < buffycount - 1; i++) {
|
||||
+ ary[i]->next = ary[i+1];
|
||||
+ }
|
||||
+ ary[buffycount - 1]->next = NULL;
|
||||
+ for (i = 1; i < buffycount; i++) {
|
||||
+ ary[i]->prev = ary[i-1];
|
||||
+ }
|
||||
+ ary[0]->prev = NULL;
|
||||
+
|
||||
+ tmp = ary[0];
|
||||
+ free(ary);
|
||||
+ return tmp;
|
||||
+}
|
||||
+
|
||||
BUFFY *mutt_find_mailbox (const char *path)
|
||||
{
|
||||
BUFFY *tmp = NULL;
|
||||
@@ -282,6 +325,7 @@
|
||||
else
|
||||
(*tmp)->size = 0;
|
||||
}
|
||||
+ Incoming = buffy_sort(Incoming);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -371,12 +415,17 @@
|
||||
return rc;
|
||||
}
|
||||
|
||||
+#define STAT_CHECK_SIZE (sb.st_size > tmp->size)
|
||||
+#define STAT_CHECK_TIME (sb.st_mtime > sb.st_atime || (tmp->newly_created && sb.st_ctime == sb.st_mtime && sb.st_ctime == sb.st_atime))
|
||||
+#define STAT_CHECK (option(OPTCHECKMBOXSIZE) ? STAT_CHECK_SIZE : STAT_CHECK_TIME)
|
||||
+
|
||||
int mutt_buffy_check (int force)
|
||||
{
|
||||
BUFFY *tmp;
|
||||
struct stat sb;
|
||||
struct stat contex_sb;
|
||||
time_t t;
|
||||
+ CONTEXT *ctx;
|
||||
|
||||
sb.st_size=0;
|
||||
contex_sb.st_dev=0;
|
||||
@@ -416,6 +465,8 @@
|
||||
|
||||
for (tmp = Incoming; tmp; tmp = tmp->next)
|
||||
{
|
||||
+ if ( tmp->new == 1 )
|
||||
+ tmp->has_new = 1;
|
||||
#ifdef USE_IMAP
|
||||
if (tmp->magic != M_IMAP)
|
||||
#endif
|
||||
***************
|
||||
*** 385,394 ****
|
||||
case M_MBOX:
|
||||
case M_MMDF:
|
||||
|
||||
! if (STAT_CHECK)
|
||||
{
|
||||
! BuffyCount++;
|
||||
! tmp->new = 1;
|
||||
}
|
||||
else if (option(OPTCHECKMBOXSIZE))
|
||||
{
|
||||
--- 432,458 ----
|
||||
case M_MBOX:
|
||||
case M_MMDF:
|
||||
|
||||
! {
|
||||
! if (STAT_CHECK || tmp->msgcount == 0)
|
||||
{
|
||||
! BUFFY b = *tmp;
|
||||
! int msgcount = 0;
|
||||
! int msg_unread = 0;
|
||||
! /* parse the mailbox, to see how much mail there is */
|
||||
! ctx = mx_open_mailbox( tmp->path, M_READONLY | M_QUIET | M_NOSORT | M_PEEK, NULL);
|
||||
! if(ctx)
|
||||
! {
|
||||
! msgcount = ctx->msgcount;
|
||||
! msg_unread = ctx->unread;
|
||||
! mx_close_mailbox(ctx, 0);
|
||||
! }
|
||||
! *tmp = b;
|
||||
! tmp->msgcount = msgcount;
|
||||
! tmp->msg_unread = msg_unread;
|
||||
! if(STAT_CHECK) {
|
||||
! tmp->has_new = tmp->new = 1;
|
||||
! BuffyCount++;
|
||||
! }
|
||||
}
|
||||
else if (option(OPTCHECKMBOXSIZE))
|
||||
{
|
||||
***************
|
||||
*** 398,432 ****
|
||||
if (tmp->newly_created &&
|
||||
(sb.st_ctime != sb.st_mtime || sb.st_ctime != sb.st_atime))
|
||||
tmp->newly_created = 0;
|
||||
!
|
||||
break;
|
||||
|
||||
case M_MAILDIR:
|
||||
|
||||
snprintf (path, sizeof (path), "%s/new", tmp->path);
|
||||
if ((dirp = opendir (path)) == NULL)
|
||||
{
|
||||
tmp->magic = 0;
|
||||
break;
|
||||
}
|
||||
while ((de = readdir (dirp)) != NULL)
|
||||
{
|
||||
char *p;
|
||||
if (*de->d_name != '.' &&
|
||||
(!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T')))
|
||||
{
|
||||
! /* one new and undeleted message is enough */
|
||||
! BuffyCount++;
|
||||
! tmp->new = 1;
|
||||
! break;
|
||||
}
|
||||
}
|
||||
closedir (dirp);
|
||||
break;
|
||||
|
||||
case M_MH:
|
||||
if ((tmp->new = mh_buffy (tmp->path)) > 0)
|
||||
BuffyCount++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
--- 462,547 ----
|
||||
if (tmp->newly_created &&
|
||||
(sb.st_ctime != sb.st_mtime || sb.st_ctime != sb.st_atime))
|
||||
tmp->newly_created = 0;
|
||||
! }
|
||||
break;
|
||||
|
||||
case M_MAILDIR:
|
||||
|
||||
+ /* count new message */
|
||||
snprintf (path, sizeof (path), "%s/new", tmp->path);
|
||||
if ((dirp = opendir (path)) == NULL)
|
||||
{
|
||||
tmp->magic = 0;
|
||||
break;
|
||||
}
|
||||
+ tmp->msgcount = 0;
|
||||
+ tmp->msg_unread = 0;
|
||||
+ tmp->msg_flagged = 0;
|
||||
while ((de = readdir (dirp)) != NULL)
|
||||
{
|
||||
char *p;
|
||||
if (*de->d_name != '.' &&
|
||||
(!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T')))
|
||||
{
|
||||
! tmp->has_new = tmp->new = 1;
|
||||
! tmp->msgcount++;
|
||||
! tmp->msg_unread++;
|
||||
! }
|
||||
! }
|
||||
! if(tmp->msg_unread)
|
||||
! BuffyCount++;
|
||||
!
|
||||
! closedir (dirp);
|
||||
!
|
||||
! /*
|
||||
! * count read messages (for folderlist (sidebar) we also need to count
|
||||
! * messages in cur so that we the total number of messages
|
||||
! */
|
||||
! snprintf (path, sizeof (path), "%s/cur", tmp->path);
|
||||
! if ((dirp = opendir (path)) == NULL)
|
||||
! {
|
||||
! tmp->magic = 0;
|
||||
! break;
|
||||
! }
|
||||
! while ((de = readdir (dirp)) != NULL)
|
||||
! {
|
||||
! char *p;
|
||||
! if (*de->d_name != '.') {
|
||||
! if ((p = strstr (de->d_name, ":2,"))) {
|
||||
! if (!strchr (p + 3, 'T')) {
|
||||
! tmp->msgcount++;
|
||||
! if ( !strchr (p + 3, 'S'))
|
||||
! tmp->msg_unread++;
|
||||
! if (strchr(p + 3, 'F'))
|
||||
! tmp->msg_flagged++;
|
||||
! }
|
||||
! } else
|
||||
! tmp->msgcount++;
|
||||
}
|
||||
}
|
||||
closedir (dirp);
|
||||
break;
|
||||
|
||||
case M_MH:
|
||||
+ {
|
||||
+ DIR *dp;
|
||||
+ struct dirent *de;
|
||||
if ((tmp->new = mh_buffy (tmp->path)) > 0)
|
||||
BuffyCount++;
|
||||
+
|
||||
+ if ((dp = opendir (path)) == NULL)
|
||||
+ break;
|
||||
+ tmp->msgcount = 0;
|
||||
+ while ((de = readdir (dp)))
|
||||
+ {
|
||||
+ if (mh_valid_message (de->d_name))
|
||||
+ {
|
||||
+ tmp->msgcount++;
|
||||
+ tmp->has_new = tmp->new = 1;
|
||||
+ }
|
||||
+ }
|
||||
+ closedir (dp);
|
||||
+ }
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (tmp->magic != M_IMAP)
|
||||
{
|
||||
tmp->new = 0;
|
||||
@@ -455,18 +506,122 @@
|
||||
{
|
||||
case M_MBOX:
|
||||
case M_MMDF:
|
||||
- if (buffy_mbox_hasnew (tmp, &sb) > 0)
|
||||
- BuffyCount++;
|
||||
- break;
|
||||
+ {
|
||||
+ if (STAT_CHECK || tmp->msgcount == 0)
|
||||
+ {
|
||||
+ BUFFY b = *tmp;
|
||||
+ int msgcount = 0;
|
||||
+ int msg_unread = 0;
|
||||
+ /* parse the mailbox, to see how much mail there is */
|
||||
+ ctx = mx_open_mailbox( tmp->path, M_READONLY | M_QUIET | M_NOSORT | M_PEEK, NULL);
|
||||
+ if(ctx)
|
||||
+ {
|
||||
+ msgcount = ctx->msgcount;
|
||||
+ msg_unread = ctx->unread;
|
||||
+ mx_close_mailbox(ctx, 0);
|
||||
+ }
|
||||
+ *tmp = b;
|
||||
+ tmp->msgcount = msgcount;
|
||||
+ tmp->msg_unread = msg_unread;
|
||||
+ if(STAT_CHECK) {
|
||||
+ tmp->has_new = tmp->new = 1;
|
||||
+ BuffyCount++;
|
||||
+ }
|
||||
+ }
|
||||
+ else if (option(OPTCHECKMBOXSIZE))
|
||||
+ {
|
||||
+ /* some other program has deleted mail from the folder */
|
||||
+ tmp->size = (off_t) sb.st_size;
|
||||
+ }
|
||||
+ if (tmp->newly_created &&
|
||||
+ (sb.st_ctime != sb.st_mtime || sb.st_ctime != sb.st_atime))
|
||||
+ tmp->newly_created = 0;
|
||||
+ }
|
||||
+ break;
|
||||
+
|
||||
|
||||
case M_MAILDIR:
|
||||
- if (buffy_maildir_hasnew (tmp) > 0)
|
||||
- BuffyCount++;
|
||||
+ {
|
||||
+ char path[_POSIX_PATH_MAX];
|
||||
+ DIR *dirp;
|
||||
+ struct dirent *de;
|
||||
+ /* count new message */
|
||||
+ snprintf (path, sizeof (path), "%s/new", tmp->path);
|
||||
+ if ((dirp = opendir (path)) == NULL)
|
||||
+ {
|
||||
+ tmp->magic = 0;
|
||||
+ break;
|
||||
+ }
|
||||
+ tmp->msgcount = 0;
|
||||
+ tmp->msg_unread = 0;
|
||||
+ tmp->msg_flagged = 0;
|
||||
+ while ((de = readdir (dirp)) != NULL)
|
||||
+ {
|
||||
+ char *p;
|
||||
+ if (*de->d_name != '.' &&
|
||||
+ (!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T')))
|
||||
+ {
|
||||
+ tmp->has_new = tmp->new = 1;
|
||||
+ tmp->msgcount++;
|
||||
+ tmp->msg_unread++;
|
||||
+ }
|
||||
+ }
|
||||
+ if(tmp->msg_unread)
|
||||
+ BuffyCount++;
|
||||
+
|
||||
+ closedir (dirp);
|
||||
+
|
||||
+ /*
|
||||
+ * count read messages (for folderlist (sidebar) we also need to count
|
||||
+ * messages in cur so that we the total number of messages
|
||||
+ */
|
||||
+ snprintf (path, sizeof (path), "%s/cur", tmp->path);
|
||||
+ if ((dirp = opendir (path)) == NULL)
|
||||
+ {
|
||||
+ tmp->magic = 0;
|
||||
+ break;
|
||||
+ }
|
||||
+ while ((de = readdir (dirp)) != NULL)
|
||||
+ {
|
||||
+ char *p;
|
||||
+ if (*de->d_name != '.') {
|
||||
+ if ((p = strstr (de->d_name, ":2,"))) {
|
||||
+ if (!strchr (p + 3, 'T')) {
|
||||
+ tmp->msgcount++;
|
||||
+ if ( !strchr (p + 3, 'S'))
|
||||
+ tmp->msg_unread++;
|
||||
+ if (strchr(p + 3, 'F'))
|
||||
+ tmp->msg_flagged++;
|
||||
+ }
|
||||
+ } else
|
||||
+ tmp->msgcount++;
|
||||
+ }
|
||||
+ }
|
||||
+ closedir (dirp);
|
||||
+ }
|
||||
break;
|
||||
|
||||
case M_MH:
|
||||
- if ((tmp->new = mh_buffy (tmp->path)) > 0)
|
||||
- BuffyCount++;
|
||||
+ {
|
||||
+ DIR *dp;
|
||||
+ char path[_POSIX_PATH_MAX];
|
||||
+ struct dirent *de;
|
||||
+ if ((tmp->new = mh_buffy (tmp->path)) > 0)
|
||||
+ BuffyCount++;
|
||||
+
|
||||
+ if ((dp = opendir (path)) == NULL)
|
||||
+ break;
|
||||
+ tmp->msgcount = 0;
|
||||
+ while ((de = readdir (dp)))
|
||||
+ {
|
||||
+ if (mh_valid_message (de->d_name))
|
||||
+ {
|
||||
+ tmp->msgcount++;
|
||||
+ tmp->has_new = tmp->new = 1;
|
||||
+ }
|
||||
+ }
|
||||
+ closedir (dp);
|
||||
+ }
|
||||
break;
|
||||
}
|
||||
}
|
||||
*** mutt-1.5.20-orig/buffy.h 2009-04-30 00:36:16.000000000 -0500
|
||||
--- mutt-1.5.20-patched/buffy.h 2009-06-19 22:07:04.000000000 -0500
|
||||
***************
|
||||
@ -536,81 +504,46 @@
|
||||
|
||||
/* mx_open_new_message() */
|
||||
#define M_ADD_FROM 1 /* add a From_ line */
|
||||
*** mutt-1.5.20-orig/Makefile.am 2009-01-04 20:11:29.000000000 -0600
|
||||
--- mutt-1.5.20-patched/Makefile.am 2009-06-19 22:07:04.000000000 -0500
|
||||
***************
|
||||
*** 29,35 ****
|
||||
score.c send.c sendlib.c signal.c sort.c \
|
||||
status.c system.c thread.c charset.c history.c lib.c \
|
||||
muttlib.c editmsg.c mbyte.c \
|
||||
! url.c ascii.c crypt-mod.c crypt-mod.h
|
||||
|
||||
nodist_mutt_SOURCES = $(BUILT_SOURCES)
|
||||
|
||||
--- 29,36 ----
|
||||
score.c send.c sendlib.c signal.c sort.c \
|
||||
status.c system.c thread.c charset.c history.c lib.c \
|
||||
muttlib.c editmsg.c mbyte.c \
|
||||
! url.c ascii.c crypt-mod.c crypt-mod.h \
|
||||
! sidebar.c
|
||||
|
||||
nodist_mutt_SOURCES = $(BUILT_SOURCES)
|
||||
|
||||
*** mutt-1.5.20-orig/Makefile.in 2009-06-09 01:50:44.000000000 -0500
|
||||
--- mutt-1.5.20-patched/Makefile.in 2009-06-19 22:07:04.000000000 -0500
|
||||
***************
|
||||
*** 85,91 ****
|
||||
system.$(OBJEXT) thread.$(OBJEXT) charset.$(OBJEXT) \
|
||||
history.$(OBJEXT) lib.$(OBJEXT) muttlib.$(OBJEXT) \
|
||||
editmsg.$(OBJEXT) mbyte.$(OBJEXT) url.$(OBJEXT) \
|
||||
! ascii.$(OBJEXT) crypt-mod.$(OBJEXT)
|
||||
am__objects_1 = patchlist.$(OBJEXT)
|
||||
nodist_mutt_OBJECTS = $(am__objects_1)
|
||||
mutt_OBJECTS = $(am_mutt_OBJECTS) $(nodist_mutt_OBJECTS)
|
||||
--- 85,92 ----
|
||||
system.$(OBJEXT) thread.$(OBJEXT) charset.$(OBJEXT) \
|
||||
history.$(OBJEXT) lib.$(OBJEXT) muttlib.$(OBJEXT) \
|
||||
editmsg.$(OBJEXT) mbyte.$(OBJEXT) url.$(OBJEXT) \
|
||||
! ascii.$(OBJEXT) crypt-mod.$(OBJEXT) \
|
||||
! sidebar.$(OBJEXT)
|
||||
am__objects_1 = patchlist.$(OBJEXT)
|
||||
nodist_mutt_OBJECTS = $(am__objects_1)
|
||||
mutt_OBJECTS = $(am_mutt_OBJECTS) $(nodist_mutt_OBJECTS)
|
||||
***************
|
||||
*** 356,362 ****
|
||||
score.c send.c sendlib.c signal.c sort.c \
|
||||
status.c system.c thread.c charset.c history.c lib.c \
|
||||
muttlib.c editmsg.c mbyte.c \
|
||||
! url.c ascii.c crypt-mod.c crypt-mod.h
|
||||
|
||||
nodist_mutt_SOURCES = $(BUILT_SOURCES)
|
||||
mutt_LDADD = @MUTT_LIB_OBJECTS@ @LIBOBJS@ $(LIBIMAP) $(MUTTLIBS) \
|
||||
--- 357,364 ----
|
||||
score.c send.c sendlib.c signal.c sort.c \
|
||||
status.c system.c thread.c charset.c history.c lib.c \
|
||||
muttlib.c editmsg.c mbyte.c \
|
||||
! url.c ascii.c crypt-mod.c crypt-mod.h \
|
||||
! sidebar.c
|
||||
|
||||
nodist_mutt_SOURCES = $(BUILT_SOURCES)
|
||||
mutt_LDADD = @MUTT_LIB_OBJECTS@ @LIBOBJS@ $(LIBIMAP) $(MUTTLIBS) \
|
||||
***************
|
||||
*** 388,394 ****
|
||||
README.SSL smime.h \
|
||||
muttbug pgppacket.h depcomp ascii.h BEWARE PATCHES patchlist.sh \
|
||||
ChangeLog mkchangelog.sh mutt_idna.h \
|
||||
! snprintf.c regex.c crypt-gpgme.h hcachever.sh.in
|
||||
|
||||
EXTRA_SCRIPTS = smime_keys
|
||||
mutt_dotlock_SOURCES = mutt_dotlock.c
|
||||
--- 390,396 ----
|
||||
README.SSL smime.h \
|
||||
muttbug pgppacket.h depcomp ascii.h BEWARE PATCHES patchlist.sh \
|
||||
ChangeLog mkchangelog.sh mutt_idna.h \
|
||||
! snprintf.c regex.c crypt-gpgme.h sidebar.h hcachever.sh.in
|
||||
|
||||
EXTRA_SCRIPTS = smime_keys
|
||||
mutt_dotlock_SOURCES = mutt_dotlock.c
|
||||
--- orig/Makefile.am.orig 2010-09-18 13:23:19.000000000 +0200
|
||||
+++ new/Makefile.am 2010-09-18 13:25:19.000000000 +0200
|
||||
@@ -34,7 +34,7 @@
|
||||
score.c send.c sendlib.c signal.c sort.c \
|
||||
status.c system.c thread.c charset.c history.c lib.c \
|
||||
muttlib.c editmsg.c mbyte.c \
|
||||
- url.c ascii.c crypt-mod.c crypt-mod.h safe_asprintf.c
|
||||
+ url.c ascii.c crypt-mod.c crypt-mod.h safe_asprintf.c sidebar.c
|
||||
|
||||
nodist_mutt_SOURCES = $(BUILT_SOURCES)
|
||||
|
||||
--- orig/Makefile.in.orig 2010-09-18 13:23:19.000000000 +0200
|
||||
+++ new/Makefile.in 2010-09-18 13:27:19.000000000 +0200
|
||||
@@ -89,7 +89,7 @@
|
||||
system.$(OBJEXT) thread.$(OBJEXT) charset.$(OBJEXT) \
|
||||
history.$(OBJEXT) lib.$(OBJEXT) muttlib.$(OBJEXT) \
|
||||
editmsg.$(OBJEXT) mbyte.$(OBJEXT) url.$(OBJEXT) \
|
||||
- ascii.$(OBJEXT) crypt-mod.$(OBJEXT) safe_asprintf.$(OBJEXT)
|
||||
+ ascii.$(OBJEXT) crypt-mod.$(OBJEXT) safe_asprintf.$(OBJEXT) sidebar.$(OBJEXT)
|
||||
am__objects_1 =
|
||||
am__objects_2 = patchlist.$(OBJEXT) $(am__objects_1)
|
||||
nodist_mutt_OBJECTS = $(am__objects_2)
|
||||
@@ -363,7 +363,7 @@
|
||||
score.c send.c sendlib.c signal.c sort.c \
|
||||
status.c system.c thread.c charset.c history.c lib.c \
|
||||
muttlib.c editmsg.c mbyte.c \
|
||||
- url.c ascii.c crypt-mod.c crypt-mod.h safe_asprintf.c
|
||||
+ url.c ascii.c crypt-mod.c crypt-mod.h safe_asprintf.c sidebar.c
|
||||
|
||||
nodist_mutt_SOURCES = $(BUILT_SOURCES)
|
||||
mutt_LDADD = @MUTT_LIB_OBJECTS@ @LIBOBJS@ $(LIBIMAP) $(MUTTLIBS) \
|
||||
@@ -397,7 +397,7 @@
|
||||
README.SSL smime.h group.h \
|
||||
muttbug pgppacket.h depcomp ascii.h BEWARE PATCHES patchlist.sh \
|
||||
ChangeLog mkchangelog.sh mutt_idna.h \
|
||||
- snprintf.c regex.c crypt-gpgme.h hcachever.sh.in
|
||||
+ snprintf.c regex.c crypt-gpgme.h sidebar.h hcachever.sh.in
|
||||
|
||||
EXTRA_SCRIPTS = smime_keys
|
||||
mutt_dotlock_SOURCES = mutt_dotlock.c
|
||||
*** mutt-1.5.20-orig/mbox.c 2009-06-10 23:29:41.000000000 -0500
|
||||
--- mutt-1.5.20-patched/mbox.c 2009-06-19 22:07:04.000000000 -0500
|
||||
***************
|
||||
@ -1001,171 +934,115 @@
|
||||
+ OP_SIDEBAR_NEXT "go down to next mailbox"
|
||||
+ OP_SIDEBAR_PREV "go to previous mailbox"
|
||||
+ OP_SIDEBAR_OPEN "open hilighted mailbox"
|
||||
*** mutt-1.5.20-orig/pager.c 2009-06-03 15:48:31.000000000 -0500
|
||||
--- mutt-1.5.20-patched/pager.c 2009-06-19 22:19:58.000000000 -0500
|
||||
***************
|
||||
*** 29,34 ****
|
||||
--- 29,35 ----
|
||||
#include "pager.h"
|
||||
#include "attach.h"
|
||||
#include "mbyte.h"
|
||||
+ #include "sidebar.h"
|
||||
--- orig/pager.c.orig 2010-09-18 13:23:19.000000000 +0200
|
||||
+++ new/pager.c 2010-09-18 14:03:08.000000000 +0200
|
||||
@@ -29,6 +29,7 @@
|
||||
#include "pager.h"
|
||||
#include "attach.h"
|
||||
#include "mbyte.h"
|
||||
+#include "sidebar.h"
|
||||
|
||||
#include "mutt_crypt.h"
|
||||
|
||||
@@ -1104,6 +1105,7 @@
|
||||
if (check_attachment_marker ((char *)buf) == 0)
|
||||
wrap_cols = COLS;
|
||||
|
||||
+ wrap_cols -= SidebarWidth;
|
||||
/* FIXME: this should come from lineInfo */
|
||||
memset(&mbstate, 0, sizeof(mbstate));
|
||||
|
||||
@@ -1778,7 +1780,7 @@
|
||||
if ((redraw & REDRAW_BODY) || topline != oldtopline)
|
||||
{
|
||||
do {
|
||||
- move (bodyoffset, 0);
|
||||
+ move (bodyoffset, SidebarWidth);
|
||||
curline = oldtopline = topline;
|
||||
lines = 0;
|
||||
force_redraw = 0;
|
||||
@@ -1791,6 +1793,7 @@
|
||||
&QuoteList, &q_level, &force_redraw, &SearchRE) > 0)
|
||||
lines++;
|
||||
curline++;
|
||||
+ move(lines + bodyoffset, SidebarWidth);
|
||||
}
|
||||
last_offset = lineInfo[curline].offset;
|
||||
} while (force_redraw);
|
||||
@@ -1804,6 +1807,7 @@
|
||||
addch ('~');
|
||||
addch ('\n');
|
||||
lines++;
|
||||
+ move(lines + bodyoffset, SidebarWidth);
|
||||
}
|
||||
/* We are going to update the pager status bar, so it isn't
|
||||
* necessary to reset to normal color now. */
|
||||
@@ -1827,21 +1831,21 @@
|
||||
/* print out the pager status bar */
|
||||
SETCOLOR (MT_COLOR_STATUS);
|
||||
BKGDSET (MT_COLOR_STATUS);
|
||||
- CLEARLINE (statusoffset);
|
||||
+ CLEARLINE_WIN (statusoffset);
|
||||
|
||||
if (IsHeader (extra) || IsMsgAttach (extra))
|
||||
{
|
||||
- size_t l1 = COLS * MB_LEN_MAX;
|
||||
+ size_t l1 = (COLS-SidebarWidth) * MB_LEN_MAX;
|
||||
size_t l2 = sizeof (buffer);
|
||||
hfi.hdr = (IsHeader (extra)) ? extra->hdr : extra->bdy->hdr;
|
||||
mutt_make_string_info (buffer, l1 < l2 ? l1 : l2, NONULL (PagerFmt), &hfi, M_FORMAT_MAKEPRINT);
|
||||
- mutt_paddstr (COLS, buffer);
|
||||
+ mutt_paddstr (COLS-SidebarWidth, buffer);
|
||||
}
|
||||
else
|
||||
{
|
||||
char bn[STRING];
|
||||
snprintf (bn, sizeof (bn), "%s (%s)", banner, pager_progress_str);
|
||||
- mutt_paddstr (COLS, bn);
|
||||
+ mutt_paddstr (COLS-SidebarWidth, bn);
|
||||
}
|
||||
BKGDSET (MT_COLOR_NORMAL);
|
||||
SETCOLOR (MT_COLOR_NORMAL);
|
||||
@@ -1852,18 +1856,23 @@
|
||||
/* redraw the pager_index indicator, because the
|
||||
* flags for this message might have changed. */
|
||||
menu_redraw_current (index);
|
||||
+ draw_sidebar(MENU_PAGER);
|
||||
|
||||
/* print out the index status bar */
|
||||
menu_status_line (buffer, sizeof (buffer), index, NONULL(Status));
|
||||
|
||||
#include "mutt_crypt.h"
|
||||
|
||||
***************
|
||||
*** 1071,1076 ****
|
||||
--- 1072,1079 ----
|
||||
mbstate_t mbstate;
|
||||
|
||||
int wrap_cols = mutt_term_width ((flags & M_PAGER_NOWRAP) ? 0 : Wrap);
|
||||
+
|
||||
+ wrap_cols -= SidebarWidth;
|
||||
|
||||
/* FIXME: this should come from lineInfo */
|
||||
memset(&mbstate, 0, sizeof(mbstate));
|
||||
***************
|
||||
*** 1717,1723 ****
|
||||
if ((redraw & REDRAW_BODY) || topline != oldtopline)
|
||||
{
|
||||
do {
|
||||
! move (bodyoffset, 0);
|
||||
curline = oldtopline = topline;
|
||||
lines = 0;
|
||||
force_redraw = 0;
|
||||
--- 1720,1726 ----
|
||||
if ((redraw & REDRAW_BODY) || topline != oldtopline)
|
||||
{
|
||||
do {
|
||||
! move (bodyoffset, SidebarWidth);
|
||||
curline = oldtopline = topline;
|
||||
lines = 0;
|
||||
force_redraw = 0;
|
||||
***************
|
||||
*** 1730,1735 ****
|
||||
--- 1733,1739 ----
|
||||
&QuoteList, &q_level, &force_redraw, &SearchRE) > 0)
|
||||
lines++;
|
||||
curline++;
|
||||
+ move(lines + bodyoffset, SidebarWidth);
|
||||
}
|
||||
last_offset = lineInfo[curline].offset;
|
||||
} while (force_redraw);
|
||||
***************
|
||||
*** 1743,1748 ****
|
||||
--- 1747,1753 ----
|
||||
addch ('~');
|
||||
addch ('\n');
|
||||
lines++;
|
||||
+ move(lines + bodyoffset, SidebarWidth);
|
||||
}
|
||||
/* We are going to update the pager status bar, so it isn't
|
||||
* necessary to reset to normal color now. */
|
||||
***************
|
||||
*** 1766,1786 ****
|
||||
/* print out the pager status bar */
|
||||
SETCOLOR (MT_COLOR_STATUS);
|
||||
BKGDSET (MT_COLOR_STATUS);
|
||||
! CLEARLINE (statusoffset);
|
||||
|
||||
if (IsHeader (extra) || IsMsgAttach (extra))
|
||||
{
|
||||
! size_t l1 = COLS * MB_LEN_MAX;
|
||||
size_t l2 = sizeof (buffer);
|
||||
hfi.hdr = (IsHeader (extra)) ? extra->hdr : extra->bdy->hdr;
|
||||
mutt_make_string_info (buffer, l1 < l2 ? l1 : l2, NONULL (PagerFmt), &hfi, M_FORMAT_MAKEPRINT);
|
||||
! mutt_paddstr (COLS, buffer);
|
||||
}
|
||||
else
|
||||
{
|
||||
char bn[STRING];
|
||||
snprintf (bn, sizeof (bn), "%s (%s)", banner, pager_progress_str);
|
||||
! mutt_paddstr (COLS, bn);
|
||||
}
|
||||
BKGDSET (MT_COLOR_NORMAL);
|
||||
SETCOLOR (MT_COLOR_NORMAL);
|
||||
--- 1771,1791 ----
|
||||
/* print out the pager status bar */
|
||||
SETCOLOR (MT_COLOR_STATUS);
|
||||
BKGDSET (MT_COLOR_STATUS);
|
||||
! CLEARLINE_WIN (statusoffset);
|
||||
|
||||
if (IsHeader (extra) || IsMsgAttach (extra))
|
||||
{
|
||||
! size_t l1 = (COLS-SidebarWidth) * MB_LEN_MAX;
|
||||
size_t l2 = sizeof (buffer);
|
||||
hfi.hdr = (IsHeader (extra)) ? extra->hdr : extra->bdy->hdr;
|
||||
mutt_make_string_info (buffer, l1 < l2 ? l1 : l2, NONULL (PagerFmt), &hfi, M_FORMAT_MAKEPRINT);
|
||||
! mutt_paddstr (COLS-SidebarWidth, buffer);
|
||||
}
|
||||
else
|
||||
{
|
||||
char bn[STRING];
|
||||
snprintf (bn, sizeof (bn), "%s (%s)", banner, pager_progress_str);
|
||||
! mutt_paddstr (COLS-SidebarWidth, bn);
|
||||
}
|
||||
BKGDSET (MT_COLOR_NORMAL);
|
||||
SETCOLOR (MT_COLOR_NORMAL);
|
||||
***************
|
||||
*** 1791,1808 ****
|
||||
/* redraw the pager_index indicator, because the
|
||||
* flags for this message might have changed. */
|
||||
menu_redraw_current (index);
|
||||
|
||||
/* print out the index status bar */
|
||||
menu_status_line (buffer, sizeof (buffer), index, NONULL(Status));
|
||||
|
||||
! move (indexoffset + (option (OPTSTATUSONTOP) ? 0 : (indexlen - 1)), 0);
|
||||
SETCOLOR (MT_COLOR_STATUS);
|
||||
BKGDSET (MT_COLOR_STATUS);
|
||||
! mutt_paddstr (COLS, buffer);
|
||||
SETCOLOR (MT_COLOR_NORMAL);
|
||||
BKGDSET (MT_COLOR_NORMAL);
|
||||
}
|
||||
|
||||
redraw = 0;
|
||||
|
||||
if (option(OPTBRAILLEFRIENDLY)) {
|
||||
--- 1796,1818 ----
|
||||
/* redraw the pager_index indicator, because the
|
||||
* flags for this message might have changed. */
|
||||
menu_redraw_current (index);
|
||||
+ draw_sidebar(MENU_PAGER);
|
||||
|
||||
/* print out the index status bar */
|
||||
menu_status_line (buffer, sizeof (buffer), index, NONULL(Status));
|
||||
|
||||
! move (indexoffset + (option (OPTSTATUSONTOP) ? 0 : (indexlen - 1)), SidebarWidth);
|
||||
SETCOLOR (MT_COLOR_STATUS);
|
||||
BKGDSET (MT_COLOR_STATUS);
|
||||
! mutt_paddstr (COLS-SidebarWidth, buffer);
|
||||
SETCOLOR (MT_COLOR_NORMAL);
|
||||
BKGDSET (MT_COLOR_NORMAL);
|
||||
}
|
||||
|
||||
+ /* if we're not using the index, update every time */
|
||||
+ if ( index == 0 )
|
||||
+ draw_sidebar(MENU_PAGER);
|
||||
+
|
||||
redraw = 0;
|
||||
|
||||
if (option(OPTBRAILLEFRIENDLY)) {
|
||||
***************
|
||||
*** 2729,2734 ****
|
||||
--- 2739,2751 ----
|
||||
mutt_what_key ();
|
||||
break;
|
||||
|
||||
+ case OP_SIDEBAR_SCROLL_UP:
|
||||
+ case OP_SIDEBAR_SCROLL_DOWN:
|
||||
+ case OP_SIDEBAR_NEXT:
|
||||
+ case OP_SIDEBAR_PREV:
|
||||
+ scroll_sidebar(ch, MENU_PAGER);
|
||||
+ break;
|
||||
+
|
||||
default:
|
||||
ch = -1;
|
||||
break;
|
||||
- move (indexoffset + (option (OPTSTATUSONTOP) ? 0 : (indexlen - 1)), 0);
|
||||
+ move (indexoffset + (option (OPTSTATUSONTOP) ? 0 : (indexlen - 1)), SidebarWidth);
|
||||
SETCOLOR (MT_COLOR_STATUS);
|
||||
BKGDSET (MT_COLOR_STATUS);
|
||||
- mutt_paddstr (COLS, buffer);
|
||||
+ mutt_paddstr (COLS-SidebarWidth, buffer);
|
||||
SETCOLOR (MT_COLOR_NORMAL);
|
||||
BKGDSET (MT_COLOR_NORMAL);
|
||||
}
|
||||
|
||||
+ /* if we're not using the index, update every time */
|
||||
+ if ( index == 0 )
|
||||
+ draw_sidebar(MENU_PAGER);
|
||||
+
|
||||
redraw = 0;
|
||||
|
||||
if (option(OPTBRAILLEFRIENDLY)) {
|
||||
@@ -2852,6 +2861,13 @@
|
||||
mutt_what_key ();
|
||||
break;
|
||||
|
||||
+ case OP_SIDEBAR_SCROLL_UP:
|
||||
+ case OP_SIDEBAR_SCROLL_DOWN:
|
||||
+ case OP_SIDEBAR_NEXT:
|
||||
+ case OP_SIDEBAR_PREV:
|
||||
+ scroll_sidebar(ch, MENU_PAGER);
|
||||
+ break;
|
||||
+
|
||||
default:
|
||||
ch = -1;
|
||||
break;
|
||||
*** mutt-1.5.20-orig/PATCHES 2008-11-11 13:55:46.000000000 -0600
|
||||
--- mutt-1.5.20-patched/PATCHES 2009-06-19 22:20:31.000000000 -0500
|
||||
***************
|
||||
@ -1619,8 +1496,8 @@
|
||||
FREE (&value);
|
||||
return;
|
||||
}
|
||||
--- mutt-1.5.20-orig/compose.c.orig 2009-06-22 15:29:56.000000000 +0200
|
||||
+++ mutt-1.5.20-patched/compose.c 2009-06-22 15:33:16.000000000 +0200
|
||||
--- orig/compose.c.orig 2010-09-18 13:23:18.000000000 +0200
|
||||
+++ new/compose.c 2010-09-18 14:01:09.000000000 +0200
|
||||
@@ -80,7 +80,7 @@
|
||||
|
||||
#define HDR_XOFFSET 14
|
||||
@ -1630,37 +1507,24 @@
|
||||
|
||||
static char *Prompts[] =
|
||||
{
|
||||
@@ -146,16 +146,16 @@
|
||||
if ((WithCrypto & APPLICATION_PGP) && (WithCrypto & APPLICATION_SMIME))
|
||||
{
|
||||
if (!msg->security)
|
||||
- mvaddstr (HDR_CRYPT, 0, " Security: ");
|
||||
+ mvaddstr (HDR_CRYPT, SidebarWidth, " Security: ");
|
||||
else if (msg->security & APPLICATION_SMIME)
|
||||
- mvaddstr (HDR_CRYPT, 0, " S/MIME: ");
|
||||
+ mvaddstr (HDR_CRYPT, SidebarWidth, " S/MIME: ");
|
||||
else if (msg->security & APPLICATION_PGP)
|
||||
- mvaddstr (HDR_CRYPT, 0, " PGP: ");
|
||||
+ mvaddstr (HDR_CRYPT, SidebarWidth, " PGP: ");
|
||||
@@ -143,7 +143,7 @@
|
||||
{
|
||||
int off = 0;
|
||||
|
||||
- mvprintw (HDR_CRYPT, 0, TITLE_FMT, "Security: ");
|
||||
+ mvprintw (HDR_CRYPT, SidebarWidth, TITLE_FMT, "Security: ");
|
||||
|
||||
if ((WithCrypto & (APPLICATION_PGP | APPLICATION_SMIME)) == 0)
|
||||
{
|
||||
@@ -175,7 +175,7 @@
|
||||
}
|
||||
else if ((WithCrypto & APPLICATION_SMIME))
|
||||
- mvaddstr (HDR_CRYPT, 0, " S/MIME: ");
|
||||
+ mvaddstr (HDR_CRYPT, SidebarWidth, " S/MIME: ");
|
||||
else if ((WithCrypto & APPLICATION_PGP))
|
||||
- mvaddstr (HDR_CRYPT, 0, " PGP: ");
|
||||
+ mvaddstr (HDR_CRYPT, SidebarWidth, " PGP: ");
|
||||
else
|
||||
return;
|
||||
|
||||
@@ -179,7 +179,7 @@
|
||||
}
|
||||
clrtoeol ();
|
||||
|
||||
- move (HDR_CRYPTINFO, 0);
|
||||
+ move (HDR_CRYPTINFO, SidebarWidth);
|
||||
clrtoeol ();
|
||||
|
||||
if ((WithCrypto & APPLICATION_PGP)
|
||||
&& msg->security & APPLICATION_PGP && msg->security & SIGN)
|
||||
@@ -195,7 +195,7 @@
|
||||
&& (msg->security & ENCRYPT)
|
||||
&& SmimeCryptAlg
|
||||
@ -1670,15 +1534,6 @@
|
||||
NONULL(SmimeCryptAlg));
|
||||
off = 20;
|
||||
}
|
||||
@@ -209,7 +209,7 @@
|
||||
int c;
|
||||
char *t;
|
||||
|
||||
- mvaddstr (HDR_MIX, 0, " Mix: ");
|
||||
+ mvaddstr (HDR_MIX, SidebarWidth, " Mix: ");
|
||||
|
||||
if (!chain)
|
||||
{
|
||||
@@ -224,7 +224,7 @@
|
||||
if (t && t[0] == '0' && t[1] == '\0')
|
||||
t = "<random>";
|
||||
@ -1759,4 +1614,3 @@
|
||||
+ move (HDR_FCC, HDR_XOFFSET + SidebarWidth);
|
||||
mutt_paddstr (W, fcc);
|
||||
fccSet = 1;
|
||||
}
|
||||
|
@ -1,15 +1,15 @@
|
||||
--- doc/Makefile.am.orig 2009-02-06 13:25:21.000000000 +0100
|
||||
+++ doc/Makefile.am 2009-02-06 13:27:06.000000000 +0100
|
||||
@@ -44,7 +44,7 @@
|
||||
--- doc/Makefile.am.orig 2010-09-17 16:04:58.000000000 +0200
|
||||
+++ doc/Makefile.am 2010-09-17 16:09:09.000000000 +0200
|
||||
@@ -47,7 +47,7 @@
|
||||
|
||||
all: makedoc-all
|
||||
|
||||
-makedoc-all: mutt.1 muttrc.man manual.html stamp-doc-rc stamp-doc-chunked manual.txt
|
||||
+makedoc-all: mutt.1 muttrc.man
|
||||
-makedoc-all: mutt.1 smime_keys.1 muttrc.man manual.html stamp-doc-rc stamp-doc-chunked manual.txt
|
||||
+makedoc-all: mutt.1 smime_keys.1 muttrc.man
|
||||
|
||||
install-data-local: makedoc-all instdoc
|
||||
$(top_srcdir)/mkinstalldirs $(DESTDIR)$(mandir)/man1
|
||||
@@ -66,9 +66,6 @@
|
||||
@@ -70,9 +70,6 @@
|
||||
$(INSTALL) -m 644 $(srcdir)/$$f $(DESTDIR)$(docdir) ; \
|
||||
done
|
||||
-$(INSTALL) -m 644 manual.txt $(DESTDIR)$(docdir)
|
||||
@ -19,14 +19,14 @@
|
||||
$(INSTALL) -m 644 Muttrc $(DESTDIR)$(sysconfdir)/Muttrc.dist
|
||||
-if [ -f $(DESTDIR)$(pkgdatadir)/Muttrc ] ; then \
|
||||
mv $(DESTDIR)$(pkgdatadir)/Muttrc* $(DESTDIR)$(sysconfdir) ; \
|
||||
@@ -99,9 +96,7 @@
|
||||
@@ -103,9 +100,7 @@
|
||||
|
||||
check:
|
||||
manual.txt: manual.html
|
||||
- -LC_ALL=C lynx -dump -nolist -with_backspaces manual.html > $@ || \
|
||||
- -LC_ALL=C lynx -dump -nolist -with_backspaces -display_charset=us-ascii manual.html > $@ || \
|
||||
- LC_ALL=C w3m -dump manual.html > $@ || \
|
||||
- LC_ALL=C elinks -dump -no-numbering -no-references manual.html | sed -e 's,\\001, ,g' > $@
|
||||
+ -LC_ALL=C lynx -dump -nolist -with_backspaces manual.html > $@
|
||||
+ -LC_ALL=C lynx -dump -nolist -with_backspaces -display_charset=us-ascii manual.html > $@
|
||||
|
||||
Muttrc: stamp-doc-rc
|
||||
|
||||
|
@ -1,10 +0,0 @@
|
||||
--- buffy.c.orig 2009-06-02 19:16:26.000000000 +0200
|
||||
+++ buffy.c 2010-05-18 07:41:47.000000000 +0200
|
||||
@@ -236,7 +236,6 @@
|
||||
{
|
||||
if(*tmp)
|
||||
{
|
||||
- FREE (&((*tmp)->path));
|
||||
tmp1=(*tmp)->next;
|
||||
FREE (tmp); /* __FREE_CHECKED__ */
|
||||
*tmp=tmp1;
|
@ -8,12 +8,3 @@
|
||||
<book>
|
||||
|
||||
<bookinfo>
|
||||
@@ -7271,7 +7271,7 @@
|
||||
<para>
|
||||
The built-in SMTP support supports encryption (the <literal>smtps</literal> protocol
|
||||
using SSL or TLS) as well as SMTP authentication using SASL. The authentication mechanisms
|
||||
-for SASL are specified in <link linkend="smtp-authenticators">$smtp_authenticators</link>
|
||||
+for SASL are specified in <literal>$smtp_authenticators</literal>
|
||||
defaulting to an empty list which makes Mutt try all available methods
|
||||
from most-secure to least-secure.
|
||||
</para>
|
||||
|
@ -1,15 +1,23 @@
|
||||
--- muttlib.c.orig 2009-02-06 13:39:51.000000000 +0100
|
||||
+++ muttlib.c 2009-02-06 13:42:35.000000000 +0100
|
||||
@@ -733,7 +733,11 @@
|
||||
--- muttlib.c.orig 2010-09-19 09:58:24.000000000 +0200
|
||||
+++ muttlib.c 2010-09-19 10:36:26.000000000 +0200
|
||||
@@ -788,14 +788,15 @@
|
||||
|
||||
void _mutt_mktemp (char *s, const char *src, int line)
|
||||
void _mutt_mktemp (char *s, size_t slen, const char *src, int line)
|
||||
{
|
||||
- snprintf (s, _POSIX_PATH_MAX, "%s/mutt-%s-%d-%d-%d", NONULL (Tempdir), NONULL(Hostname), (int) getuid(), (int) getpid (), Counter++);
|
||||
+ char t[7];
|
||||
+ snprintf (t, 7, "-%05d", Counter++);
|
||||
+ snprintf (s, _POSIX_PATH_MAX-6, "%s/mutt-%s-XXXXXXXX", NONULL(Tempdir), NONULL(Hostname));
|
||||
+ mktemp (s);
|
||||
+ strncat(s, t, 6);
|
||||
dprint (3, (debugfile, "%s:%d: mutt_mktemp returns \"%s\".\n", src, line, s));
|
||||
unlink (s);
|
||||
- size_t n = snprintf (s, slen, "%s/mutt-%s-%d-%d-%ld%ld", NONULL (Tempdir), NONULL (Hostname),
|
||||
- (int) getuid (), (int) getpid (), random (), random ());
|
||||
+ size_t n = snprintf (s, slen, "%s/mutt-%s-XXXXXXXX", NONULL (Tempdir), NONULL (Hostname));
|
||||
if (n >= slen)
|
||||
dprint (1, (debugfile, "%s:%d: ERROR: insufficient buffer space to hold temporary filename! slen=%zu but need %zu\n",
|
||||
src, line, slen, n));
|
||||
- dprint (3, (debugfile, "%s:%d: mutt_mktemp returns \"%s\".\n", src, line, s));
|
||||
- if (unlink (s) && errno != ENOENT)
|
||||
- dprint (1, (debugfile, "%s:%d: ERROR: unlink(\"%s\"): %s (errno %d)\n", src, line, s, strerror (errno), errno));
|
||||
+ if (mktemp (s)) {
|
||||
+ dprint (3, (debugfile, "%s:%d: mutt_mktemp returns \"%s\".\n", src, line, s));
|
||||
+ } else {
|
||||
+ dprint (1, (debugfile, "%s:%d: ERROR: mktemp(\"%s\"): %s (errno %d)\n", src, line, s, strerror (errno), errno));
|
||||
+ }
|
||||
}
|
||||
|
||||
void mutt_free_alias (ALIAS **p)
|
||||
|
@ -1,11 +0,0 @@
|
||||
--- mutt_ssl.c.orig 2009-06-10 07:08:29.000000000 +0200
|
||||
+++ mutt_ssl.c 2010-05-03 10:45:21.000000000 +0200
|
||||
@@ -652,7 +652,7 @@
|
||||
char *buf = NULL;
|
||||
int bufsize;
|
||||
/* needed to get the DNS subjectAltNames: */
|
||||
- STACK *subj_alt_names;
|
||||
+ STACK_OF(GENERAL_NAME) *subj_alt_names;
|
||||
int subj_alt_names_count;
|
||||
GENERAL_NAME *subj_alt_name;
|
||||
/* did we find a name matching hostname? */
|
Loading…
x
Reference in New Issue
Block a user