Accepting request 197243 from server:mail
- Update to new upstream release 2.11 (forwarded request 197185 from jengelh) OBS-URL: https://build.opensuse.org/request/show/197243 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/alpine?expand=0&rev=33
This commit is contained in:
parent
71a80ea808
commit
544ac66853
@ -1,10 +0,0 @@
|
|||||||
--- configure.ac
|
|
||||||
+++ configure.ac
|
|
||||||
@@ -1307,6 +1307,7 @@
|
|
||||||
AC_CHECK_LIB(pam, pam_start,
|
|
||||||
[
|
|
||||||
alpine_c_client_target="lnp"
|
|
||||||
+ LIBS="$LIBS -lpam"
|
|
||||||
],
|
|
||||||
[
|
|
||||||
if test -f /etc/shadow ; then
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:ee9a0a08e2bdeafb42448c759fcc38f1d960ed9485a7c7178d8c4016b13898cc
|
|
||||||
size 4849936
|
|
3
alpine-2.11.tar.xz
Normal file
3
alpine-2.11.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:fecc9ca5df03e0f368edec65cd61444325157b5635b5c92380cedf9c4ce8fbf6
|
||||||
|
size 4403188
|
@ -1,6 +1,13 @@
|
|||||||
--- ./imap/src/osdep/unix/dummy.c 2009/06/02 09:53:30 1.1
|
---
|
||||||
+++ ./imap/src/osdep/unix/dummy.c 2009/06/02 10:04:31
|
imap/src/osdep/unix/dummy.c | 14 ++++++++++++--
|
||||||
@@ -723,6 +723,17 @@
|
pith/send.c | 1 +
|
||||||
|
2 files changed, 13 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
Index: alpine-2.11/imap/src/osdep/unix/dummy.c
|
||||||
|
===================================================================
|
||||||
|
--- alpine-2.11.orig/imap/src/osdep/unix/dummy.c
|
||||||
|
+++ alpine-2.11/imap/src/osdep/unix/dummy.c
|
||||||
|
@@ -736,6 +736,17 @@ long dummy_copy (MAILSTREAM *stream,char
|
||||||
return NIL;
|
return NIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -18,7 +25,7 @@
|
|||||||
|
|
||||||
/* Dummy append message string
|
/* Dummy append message string
|
||||||
* Accepts: mail stream
|
* Accepts: mail stream
|
||||||
@@ -742,8 +753,7 @@
|
@@ -755,8 +766,7 @@ long dummy_append (MAILSTREAM *stream,ch
|
||||||
/* append to INBOX? */
|
/* append to INBOX? */
|
||||||
if (!compare_cstring (mailbox,"INBOX")) {
|
if (!compare_cstring (mailbox,"INBOX")) {
|
||||||
/* yes, if no empty proto try creating */
|
/* yes, if no empty proto try creating */
|
||||||
@ -28,9 +35,11 @@
|
|||||||
}
|
}
|
||||||
else if (dummy_file (tmp,mailbox) && ((fd = open (tmp,O_RDONLY,NIL)) < 0)) {
|
else if (dummy_file (tmp,mailbox) && ((fd = open (tmp,O_RDONLY,NIL)) < 0)) {
|
||||||
if ((e = errno) == ENOENT) /* failed, was it no such file? */
|
if ((e = errno) == ENOENT) /* failed, was it no such file? */
|
||||||
--- pith/send.c 2009/06/02 10:04:13 1.11
|
Index: alpine-2.11/pith/send.c
|
||||||
+++ pith/send.c 2009/06/02 10:04:31
|
===================================================================
|
||||||
@@ -1569,6 +1569,7 @@
|
--- alpine-2.11.orig/pith/send.c
|
||||||
|
+++ alpine-2.11/pith/send.c
|
||||||
|
@@ -1570,6 +1570,7 @@ set_priority_header(METAENV *header, cha
|
||||||
pf->textbuf = cpystr(value);
|
pf->textbuf = cpystr(value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,39 +0,0 @@
|
|||||||
--- imap/src/osdep/unix/maildir.c 2011-10-17 10:11:55.000000000 +0200
|
|
||||||
+++ imap/src/osdep/unix/maildir.c 2011-10-17 10:39:31.000000000 +0200
|
|
||||||
@@ -2396,7 +2396,6 @@
|
|
||||||
|| !strncmp(d->d_name, MDUIDTEMP, strlen(MDUIDTEMP)))
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
- closedir(dir);
|
|
||||||
rv = d ? !strncmp(d->d_name, tmp, strlen(tmp)) : 1;
|
|
||||||
createtemp = d ? 0 : 1;
|
|
||||||
if (d && rv == 0){ /* is there a temp file that is not ours? */
|
|
||||||
@@ -2410,6 +2409,7 @@
|
|
||||||
unlink(tmp);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+ closedir(dir);
|
|
||||||
if(createtemp){
|
|
||||||
FILE *fp;
|
|
||||||
sprintf(tmp,"%s/%s.%d.%lu", LOCAL->dir, MDUIDTEMP, getpid(), time(0));
|
|
||||||
@@ -2442,7 +2442,6 @@
|
|
||||||
if(!strncmp(d->d_name, MDUIDLAST, strlen(MDUIDLAST)))
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
- closedir(dir);
|
|
||||||
createuid = d == NULL ? 1 : 0;
|
|
||||||
if(uid_last == NULL)
|
|
||||||
deleteuid++;
|
|
||||||
@@ -2473,9 +2472,10 @@
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(deleteuid){
|
|
||||||
- sprintf(tmp,"%s/%s", LOCAL->dir, d->d_name);
|
|
||||||
+ snprintf(tmp, sizeof(tmp), "%s/%s", LOCAL->dir, d->d_name);
|
|
||||||
unlink(tmp);
|
|
||||||
}
|
|
||||||
+ closedir(dir);
|
|
||||||
if(createuid)
|
|
||||||
maildir_write_uid(stream, (uid_last ? *uid_last : stream->uid_last),
|
|
||||||
uid_validity ? *uid_validity : time(0));
|
|
||||||
Nur in alpine-2.00/imap/src/osdep/unix: maildir.c~.
|
|
@ -1,6 +1,12 @@
|
|||||||
--- pith/string.c
|
---
|
||||||
+++ pith/string.c
|
pith/string.c | 14 ++++++++++++++
|
||||||
@@ -769,6 +769,7 @@
|
1 file changed, 14 insertions(+)
|
||||||
|
|
||||||
|
Index: alpine-2.11/pith/string.c
|
||||||
|
===================================================================
|
||||||
|
--- alpine-2.11.orig/pith/string.c
|
||||||
|
+++ alpine-2.11/pith/string.c
|
||||||
|
@@ -770,6 +770,7 @@ month_abbrev_locale(int month_num)
|
||||||
return("xxx");
|
return("xxx");
|
||||||
else{
|
else{
|
||||||
static char buf[20];
|
static char buf[20];
|
||||||
@ -8,7 +14,7 @@
|
|||||||
struct tm tm;
|
struct tm tm;
|
||||||
|
|
||||||
memset(&tm, 0, sizeof(tm));
|
memset(&tm, 0, sizeof(tm));
|
||||||
@@ -810,6 +811,12 @@
|
@@ -811,6 +812,12 @@ month_abbrev_locale(int month_num)
|
||||||
|
|
||||||
buf[0] = ' ';
|
buf[0] = ' ';
|
||||||
}
|
}
|
||||||
@ -21,7 +27,7 @@
|
|||||||
|
|
||||||
return(buf);
|
return(buf);
|
||||||
}
|
}
|
||||||
@@ -841,12 +848,19 @@
|
@@ -842,12 +849,19 @@ month_name_locale(int month_num)
|
||||||
return("");
|
return("");
|
||||||
else{
|
else{
|
||||||
static char buf[20];
|
static char buf[20];
|
||||||
|
@ -3,10 +3,10 @@
|
|||||||
configure.ac | 3 ++-
|
configure.ac | 3 ++-
|
||||||
2 files changed, 3 insertions(+), 2 deletions(-)
|
2 files changed, 3 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
Index: alpine-2.10/alpine/Makefile.am
|
Index: alpine-2.11/alpine/Makefile.am
|
||||||
===================================================================
|
===================================================================
|
||||||
--- alpine-2.10.orig/alpine/Makefile.am
|
--- alpine-2.11.orig/alpine/Makefile.am
|
||||||
+++ alpine-2.10/alpine/Makefile.am
|
+++ alpine-2.11/alpine/Makefile.am
|
||||||
@@ -35,7 +35,7 @@ BUILT_SOURCES = date.c
|
@@ -35,7 +35,7 @@ BUILT_SOURCES = date.c
|
||||||
LDADD = ../pico/libpico.a ../pico/osdep/libpicoosd.a \
|
LDADD = ../pico/libpico.a ../pico/osdep/libpicoosd.a \
|
||||||
../pith/libpith.a ../pith/osdep/libpithosd.a \
|
../pith/libpith.a ../pith/osdep/libpithosd.a \
|
||||||
@ -16,11 +16,11 @@ Index: alpine-2.10/alpine/Makefile.am
|
|||||||
|
|
||||||
AM_CPPFLAGS = -I@top_builddir@/include -I@top_srcdir@/include -DLOCALEDIR=\"$(localedir)\"
|
AM_CPPFLAGS = -I@top_builddir@/include -I@top_srcdir@/include -DLOCALEDIR=\"$(localedir)\"
|
||||||
|
|
||||||
Index: alpine-2.10/configure.ac
|
Index: alpine-2.11/configure.ac
|
||||||
===================================================================
|
===================================================================
|
||||||
--- alpine-2.10.orig/configure.ac
|
--- alpine-2.11.orig/configure.ac
|
||||||
+++ alpine-2.10/configure.ac
|
+++ alpine-2.11/configure.ac
|
||||||
@@ -37,8 +37,9 @@ WEB_BUILD=web/src/alpined.d
|
@@ -38,8 +38,9 @@ WEB_BUILD=web/src/alpined.d
|
||||||
|
|
||||||
dnl CHECK PROGRAMS
|
dnl CHECK PROGRAMS
|
||||||
|
|
||||||
|
@ -1,3 +1,27 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Sep 2 14:07:32 UTC 2013 - jengelh@inai.de
|
||||||
|
|
||||||
|
- Update to new upstream release 2.11
|
||||||
|
* Increase encryption of S/MIME encrypted messages.
|
||||||
|
* Pico: Improvements in justification of paragraphs: lines that
|
||||||
|
begin with a quote string, followed by a space were considered
|
||||||
|
individual paragraphs, now they are considered part of a paragraph.
|
||||||
|
* Unix Alpine: Allow local .pinerc file to be a symbolic link.
|
||||||
|
* Experimental extended support of recognition of UTF-8 in urls
|
||||||
|
* Added recognition of ws and wss URIs.
|
||||||
|
* Add ability to color folder names, directory names, and text in
|
||||||
|
the FOLDER SCREEN.
|
||||||
|
* Add the ability to color any token used in the display of the
|
||||||
|
INDEX SCREEN.
|
||||||
|
* New option preserve-original-fields that adds the ability to
|
||||||
|
preserve To: and Cc: fields when replying to a message, as
|
||||||
|
specified by original sender.
|
||||||
|
* Added Quota subcommands for printing, forwarding, saving, etc.
|
||||||
|
- Refresh from homepage (and save as unified): chappa-*.patch
|
||||||
|
- Refresh for -p1: operation-may-be-undefined-warning.diff,
|
||||||
|
fix-implicit.patch, alpine-gcc44.diff
|
||||||
|
- Drop quilt-patches/alpine-2.00-as_needed.patch (merged upstream)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed May 22 20:37:21 UTC 2013 - jengelh@inai.de
|
Wed May 22 20:37:21 UTC 2013 - jengelh@inai.de
|
||||||
|
|
||||||
|
59
alpine.spec
59
alpine.spec
@ -17,34 +17,16 @@
|
|||||||
|
|
||||||
|
|
||||||
Name: alpine
|
Name: alpine
|
||||||
#
|
|
||||||
# For debugging only:
|
# For debugging only:
|
||||||
%define build_vanilla 0
|
%define build_vanilla 0
|
||||||
#
|
|
||||||
Summary: Mail User Agent
|
Summary: Mail User Agent
|
||||||
License: Apache-2.0
|
License: Apache-2.0
|
||||||
Group: Productivity/Networking/Email/Clients
|
Group: Productivity/Networking/Email/Clients
|
||||||
BuildRequires: imap-devel
|
Version: 2.11
|
||||||
BuildRequires: krb5-devel
|
|
||||||
BuildRequires: libgssapi
|
|
||||||
BuildRequires: libtool
|
|
||||||
BuildRequires: ncurses-devel
|
|
||||||
BuildRequires: openldap2-devel
|
|
||||||
BuildRequires: openssl-devel
|
|
||||||
BuildRequires: pam-devel
|
|
||||||
BuildRequires: update-desktop-files
|
|
||||||
BuildRequires: xz
|
|
||||||
# pgp4pine requires pine:
|
|
||||||
Provides: pine
|
|
||||||
#
|
|
||||||
Obsoletes: pine4
|
|
||||||
Provides: pine4
|
|
||||||
#
|
|
||||||
Version: 2.10
|
|
||||||
Release: 0
|
Release: 0
|
||||||
Url: http://www.washington.edu/alpine/
|
Url: http://patches.freeiz.com/alpine/
|
||||||
Source: http://patches.freeiz.com/alpine/patches/alpine-2.10/alpine-2.10.clean.tar.lzma
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
Source: http://patches.freeiz.com/alpine/release/src/%name-%version.tar.xz
|
||||||
Source1: %name.png
|
Source1: %name.png
|
||||||
Source2: %name.desktop
|
Source2: %name.desktop
|
||||||
Patch1: pine-nonvoid-function.patch
|
Patch1: pine-nonvoid-function.patch
|
||||||
@ -52,7 +34,6 @@ Patch2: make-use-of-strncat-safer.diff
|
|||||||
Patch3: operation-may-be-undefined-warning.diff
|
Patch3: operation-may-be-undefined-warning.diff
|
||||||
Patch4: fix-implicit.patch
|
Patch4: fix-implicit.patch
|
||||||
Patch5: alpine-gcc44.diff
|
Patch5: alpine-gcc44.diff
|
||||||
Patch6: alpine-2.00-as_needed.patch
|
|
||||||
Patch7: alpine-month_name-utf8.patch
|
Patch7: alpine-month_name-utf8.patch
|
||||||
Patch10: pico-fix-spurious-undef-warnings.diff
|
Patch10: pico-fix-spurious-undef-warnings.diff
|
||||||
Patch20: pine-expression-warnings.diff
|
Patch20: pine-expression-warnings.diff
|
||||||
@ -70,6 +51,22 @@ Patch604: chappa-maildir.patch
|
|||||||
Patch605: chappa-WrtAcc.patch
|
Patch605: chappa-WrtAcc.patch
|
||||||
Patch606: chappa-unixnullbug.patch
|
Patch606: chappa-unixnullbug.patch
|
||||||
Patch613: alpine-no-add-needed.patch
|
Patch613: alpine-no-add-needed.patch
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
BuildRequires: autoconf >= 2.69
|
||||||
|
BuildRequires: imap-devel
|
||||||
|
BuildRequires: krb5-devel
|
||||||
|
BuildRequires: libgssapi
|
||||||
|
BuildRequires: libtool
|
||||||
|
BuildRequires: ncurses-devel
|
||||||
|
BuildRequires: openldap2-devel
|
||||||
|
BuildRequires: openssl-devel
|
||||||
|
BuildRequires: pam-devel
|
||||||
|
BuildRequires: update-desktop-files
|
||||||
|
BuildRequires: xz
|
||||||
|
# pgp4pine requires pine:
|
||||||
|
Provides: pine
|
||||||
|
Obsoletes: pine4
|
||||||
|
Provides: pine4
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Alpine is a display-oriented email client that is suitable for both
|
Alpine is a display-oriented email client that is suitable for both
|
||||||
@ -133,11 +130,10 @@ fi
|
|||||||
#
|
#
|
||||||
%patch1 -p1
|
%patch1 -p1
|
||||||
%patch2 -p1
|
%patch2 -p1
|
||||||
%patch3
|
%patch3 -p1
|
||||||
%patch4 -p0
|
%patch4 -p1
|
||||||
%patch5 -p0
|
%patch5 -p1
|
||||||
%patch6 -p0
|
%patch7 -p1
|
||||||
%patch7
|
|
||||||
%patch10 -p1
|
%patch10 -p1
|
||||||
%patch20 -p1
|
%patch20 -p1
|
||||||
%patch40 -p1
|
%patch40 -p1
|
||||||
@ -188,6 +184,13 @@ autoreconf -fiv
|
|||||||
grep -B9 -A20 'failed program was' config.log | grep -A24 checking
|
grep -B9 -A20 'failed program was' config.log | grep -A24 checking
|
||||||
exit 5
|
exit 5
|
||||||
}
|
}
|
||||||
|
%{?fedora_version: tag=LFD}
|
||||||
|
%{?mandriva_version: tag=LMD}
|
||||||
|
%{?redhat_version: tag=LRH}
|
||||||
|
%{?centos_version: tag=LRH}
|
||||||
|
%{?suse_version: tag=LSU}
|
||||||
|
perl -i -pe 's{(define SYSTYPE) "LNX"}{$1 "'"$tag"'"}g' include/config.h
|
||||||
|
|
||||||
#
|
#
|
||||||
# imap does not use CFLAGS from configure, needs EXTRACFLAGS/EXTRALDFLAGS:
|
# imap does not use CFLAGS from configure, needs EXTRACFLAGS/EXTRALDFLAGS:
|
||||||
#
|
#
|
||||||
|
@ -1,408 +1,351 @@
|
|||||||
diff -rc alpine-2.10/pico/basic.c alpine-2.10.WrtAcc/pico/basic.c
|
---
|
||||||
*** alpine-2.10/pico/basic.c 2013-01-11 11:25:28.000000000 -0700
|
pico/basic.c | 183 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
--- alpine-2.10.WrtAcc/pico/basic.c 2013-01-11 20:43:11.000000000 -0700
|
pico/composer.c | 9 ++
|
||||||
***************
|
pico/display.c | 7 +-
|
||||||
*** 344,349 ****
|
pico/ebind.h | 8 +-
|
||||||
--- 344,532 ----
|
pico/efunc.h | 3
|
||||||
return(TRUE);
|
pico/main.c | 6 +
|
||||||
}
|
pico/search.c | 6 -
|
||||||
|
7 files changed, 214 insertions(+), 8 deletions(-)
|
||||||
+ unsigned char GetAccent()
|
|
||||||
+ {
|
Index: alpine-2.11/pico/basic.c
|
||||||
+ UCS c,d;
|
===================================================================
|
||||||
+ c = GetKey();
|
--- alpine-2.11.orig/pico/basic.c
|
||||||
+ if ((c == '?') || (c == '!')) {
|
+++ alpine-2.11/pico/basic.c
|
||||||
+ d = c;
|
@@ -344,6 +344,189 @@ gotobop(int f, int n)
|
||||||
+ c = '\\';
|
return(TRUE);
|
||||||
+ }
|
}
|
||||||
+ else
|
|
||||||
+ if ((c == 's') || (c == 'S')){
|
+unsigned char GetAccent()
|
||||||
+ c = d = 's';
|
+{
|
||||||
|
+ UCS c,d;
|
||||||
|
+ c = GetKey();
|
||||||
|
+ if ((c == '?') || (c == '!')) {
|
||||||
|
+ d = c;
|
||||||
|
+ c = '\\';
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ if ((c == 's') || (c == 'S')){
|
||||||
|
+ c = d = 's';
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ if ((c == 'l') || (c == 'L')){
|
||||||
|
+ c = d = 'l';
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ d = GetKey();
|
||||||
|
+ return accent(c,d);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+int pineaccent(f,n)
|
||||||
|
+ int f,n;
|
||||||
|
+{ unsigned char e;
|
||||||
|
+
|
||||||
|
+ if (e = GetAccent())
|
||||||
|
+ execute(e, 0, 1);
|
||||||
|
+ return 1;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+unsigned char accent(f,n)
|
||||||
|
+UCS f,n;
|
||||||
|
+{ UCS c,d;
|
||||||
|
+
|
||||||
|
+ c = f;
|
||||||
|
+ d = n;
|
||||||
|
+ switch(c){
|
||||||
|
+ case '~' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'a' : return '\343';
|
||||||
|
+ case 'n' : return '\361';
|
||||||
|
+ case 'o' : return '\365';
|
||||||
|
+ case 'A' : return '\303';
|
||||||
|
+ case 'N' : return '\321';
|
||||||
|
+ case 'O' : return '\325';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case '\047' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'a' : return '\341';
|
||||||
|
+ case 'e' : return '\351';
|
||||||
|
+ case 'i' : return '\355';
|
||||||
|
+ case 'o' : return '\363';
|
||||||
|
+ case 'u' : return '\372';
|
||||||
|
+ case 'y' : return '\375';
|
||||||
|
+ case 'A' : return '\301';
|
||||||
|
+ case 'E' : return '\311';
|
||||||
|
+ case 'I' : return '\315';
|
||||||
|
+ case 'O' : return '\323';
|
||||||
|
+ case 'U' : return '\332';
|
||||||
|
+ case 'Y' : return '\335';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case '"' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'a' : return '\344';
|
||||||
|
+ case 'e' : return '\353';
|
||||||
|
+ case 'i' : return '\357';
|
||||||
|
+ case 'o' : return '\366';
|
||||||
|
+ case 'u' : return '\374';
|
||||||
|
+ case 'y' : return '\377';
|
||||||
|
+ case 'A' : return '\304';
|
||||||
|
+ case 'E' : return '\313';
|
||||||
|
+ case 'I' : return '\317';
|
||||||
|
+ case 'O' : return '\326';
|
||||||
|
+ case 'U' : return '\334';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case '^' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'a' : return '\342';
|
||||||
|
+ case 'e' : return '\352';
|
||||||
|
+ case 'i' : return '\356';
|
||||||
|
+ case 'o' : return '\364';
|
||||||
|
+ case 'u' : return '\373';
|
||||||
|
+ case 'A' : return '\302';
|
||||||
|
+ case 'E' : return '\312';
|
||||||
|
+ case 'I' : return '\316';
|
||||||
|
+ case 'O' : return '\324';
|
||||||
|
+ case 'U' : return '\333';
|
||||||
|
+ case '0' : return '\260';
|
||||||
|
+ case '1' : return '\271';
|
||||||
|
+ case '2' : return '\262';
|
||||||
|
+ case '3' : return '\263';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case '`' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'a' : return '\340';
|
||||||
|
+ case 'e' : return '\350';
|
||||||
|
+ case 'i' : return '\354';
|
||||||
|
+ case 'o' : return '\362';
|
||||||
|
+ case 'u' : return '\371';
|
||||||
|
+ case 'A' : return '\300';
|
||||||
|
+ case 'E' : return '\310';
|
||||||
|
+ case 'I' : return '\314';
|
||||||
|
+ case 'O' : return '\322';
|
||||||
|
+ case 'U' : return '\331';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case 'o' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'a' : return '\345';
|
||||||
|
+ case 'A' : return '\305';
|
||||||
|
+ case '/' : return '\370';
|
||||||
|
+ case 'r' : return '\256';
|
||||||
|
+ case 'R' : return '\256';
|
||||||
|
+ case 'c' : return '\251';
|
||||||
|
+ case 'C' : return '\251';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case '-' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'o' : return '\272';
|
||||||
|
+ case 'O' : return '\272';
|
||||||
|
+ case '0' : return '\272';
|
||||||
|
+ case 'a' : return '\252';
|
||||||
|
+ case 'A' : return '\252';
|
||||||
|
+ case 'l' : return '\243';
|
||||||
|
+ case 'L' : return '\243';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case 'O' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case '/' : return '\330';
|
||||||
|
+ case 'r' : return '\256';
|
||||||
|
+ case 'R' : return '\256';
|
||||||
|
+ case 'c' : return '\251';
|
||||||
|
+ case 'C' : return '\251';
|
||||||
|
+ }
|
||||||
|
+ case '/' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'o' : return '\370';
|
||||||
|
+ case 'O' : return '\330';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case 'a' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'e' : return '\346';
|
||||||
|
+ case 'E' : return '\346';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case 'A' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'E' : return '\306';
|
||||||
|
+ case 'e' : return '\306';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case ',' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'c' : return '\347';
|
||||||
|
+ case 'C' : return '\307';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case '\\' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case '?' : return '\277';
|
||||||
|
+ case '!' : return '\241';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case 's' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 's' : return '\337';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case 'l' :
|
||||||
|
+ switch(d){
|
||||||
|
+ case 'l' : return '\243';
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
+ }
|
+ }
|
||||||
+ else
|
+ return '\0';
|
||||||
+ if ((c == 'l') || (c == 'L')){
|
+}
|
||||||
+ c = d = 'l';
|
|
||||||
+ }
|
/*
|
||||||
+ else
|
* go forword to the end of the current paragraph
|
||||||
+ d = GetKey();
|
Index: alpine-2.11/pico/composer.c
|
||||||
+ return accent(c,d);
|
===================================================================
|
||||||
+ }
|
--- alpine-2.11.orig/pico/composer.c
|
||||||
+
|
+++ alpine-2.11/pico/composer.c
|
||||||
+ int pineaccent(f,n)
|
@@ -2015,7 +2015,7 @@ LineEdit(int allowedit, UCS *lastch)
|
||||||
+ int f,n;
|
tbufp = &strng[ods.p_len];
|
||||||
+ { unsigned char e;
|
|
||||||
+
|
if(VALID_KEY(ch)){ /* char input */
|
||||||
+ if (e = GetAccent())
|
- /*
|
||||||
+ execute(e, 0, 1);
|
+insert_char:/*
|
||||||
+ return 1;
|
* if we are allowing editing, insert the new char
|
||||||
+ }
|
* end up leaving tbufp pointing to newly
|
||||||
+
|
* inserted character in string, and offset to the
|
||||||
+ unsigned char accent(f,n)
|
@@ -2095,6 +2095,13 @@ LineEdit(int allowedit, UCS *lastch)
|
||||||
+ UCS f,n;
|
}
|
||||||
+ { UCS c,d;
|
else { /* interpret ch as a command */
|
||||||
+
|
switch (ch = normalize_cmd(ch, ckm, 2)) {
|
||||||
+ c = f;
|
+ case (CTRL|'\\') :
|
||||||
+ d = n;
|
+ if (ch = GetAccent())
|
||||||
+ switch(c){
|
+ goto insert_char;
|
||||||
+ case '~' :
|
+ else
|
||||||
+ switch(d){
|
+ clearcursor();
|
||||||
+ case 'a' : return '\343';
|
+ break;
|
||||||
+ case 'n' : return '\361';
|
+
|
||||||
+ case 'o' : return '\365';
|
case (CTRL|KEY_LEFT): /* word skip left */
|
||||||
+ case 'A' : return '\303';
|
if(ods.p_ind > 0) /* Scoot one char left if possible */
|
||||||
+ case 'N' : return '\321';
|
ods.p_ind--;
|
||||||
+ case 'O' : return '\325';
|
Index: alpine-2.11/pico/display.c
|
||||||
+ }
|
===================================================================
|
||||||
+ break;
|
--- alpine-2.11.orig/pico/display.c
|
||||||
+ case '\047' :
|
+++ alpine-2.11/pico/display.c
|
||||||
+ switch(d){
|
@@ -1751,6 +1751,11 @@ mlreplyd(UCS *prompt, UCS *buf, int nbuf
|
||||||
+ case 'a' : return '\341';
|
b = &buf[ucs4_strlen(buf)];
|
||||||
+ case 'e' : return '\351';
|
continue;
|
||||||
+ case 'i' : return '\355';
|
|
||||||
+ case 'o' : return '\363';
|
+ case (CTRL|'\\'):
|
||||||
+ case 'u' : return '\372';
|
+ if (c = GetAccent())
|
||||||
+ case 'y' : return '\375';
|
+ goto text;
|
||||||
+ case 'A' : return '\301';
|
+ continue;
|
||||||
+ case 'E' : return '\311';
|
+
|
||||||
+ case 'I' : return '\315';
|
case (CTRL|'F') : /* CTRL-F forward a char*/
|
||||||
+ case 'O' : return '\323';
|
case KEY_RIGHT :
|
||||||
+ case 'U' : return '\332';
|
if(*b == '\0')
|
||||||
+ case 'Y' : return '\335';
|
@@ -1881,7 +1886,7 @@ mlreplyd(UCS *prompt, UCS *buf, int nbuf
|
||||||
+ }
|
#endif
|
||||||
+ break;
|
|
||||||
+ case '"' :
|
default :
|
||||||
+ switch(d){
|
-
|
||||||
+ case 'a' : return '\344';
|
+text:
|
||||||
+ case 'e' : return '\353';
|
/* look for match in extra_v */
|
||||||
+ case 'i' : return '\357';
|
for(i = 0; i < 12; i++)
|
||||||
+ case 'o' : return '\366';
|
if(c && c == extra_v[i]){
|
||||||
+ case 'u' : return '\374';
|
Index: alpine-2.11/pico/ebind.h
|
||||||
+ case 'y' : return '\377';
|
===================================================================
|
||||||
+ case 'A' : return '\304';
|
--- alpine-2.11.orig/pico/ebind.h
|
||||||
+ case 'E' : return '\313';
|
+++ alpine-2.11/pico/ebind.h
|
||||||
+ case 'I' : return '\317';
|
@@ -61,7 +61,7 @@ KEYTAB keytab[NBINDS] = {
|
||||||
+ case 'O' : return '\326';
|
#ifdef MOUSE
|
||||||
+ case 'U' : return '\334';
|
{KEY_MOUSE, mousepress},
|
||||||
+ }
|
#ifndef _WINDOWS
|
||||||
+ break;
|
- {CTRL|'\\', toggle_xterm_mouse},
|
||||||
+ case '^' :
|
+ {CTRL|'|', toggle_xterm_mouse},
|
||||||
+ switch(d){
|
#endif
|
||||||
+ case 'a' : return '\342';
|
#endif
|
||||||
+ case 'e' : return '\352';
|
{CTRL|'A', gotobol},
|
||||||
+ case 'i' : return '\356';
|
@@ -100,7 +100,9 @@ KEYTAB keytab[NBINDS] = {
|
||||||
+ case 'o' : return '\364';
|
{CTRL|KEY_HOME, gotobob},
|
||||||
+ case 'u' : return '\373';
|
{CTRL|KEY_END, gotoeob},
|
||||||
+ case 'A' : return '\302';
|
{0x7F, backdel},
|
||||||
+ case 'E' : return '\312';
|
- {0, NULL}
|
||||||
+ case 'I' : return '\316';
|
+ {CTRL|'\\', pineaccent},
|
||||||
+ case 'O' : return '\324';
|
+ {0,
|
||||||
+ case 'U' : return '\333';
|
+NULL}
|
||||||
+ case '0' : return '\260';
|
};
|
||||||
+ case '1' : return '\271';
|
|
||||||
+ case '2' : return '\262';
|
|
||||||
+ case '3' : return '\263';
|
@@ -123,7 +125,7 @@ KEYTAB pkeytab[NBINDS] = {
|
||||||
+ }
|
#ifdef MOUSE
|
||||||
+ break;
|
{KEY_MOUSE, mousepress},
|
||||||
+ case '`' :
|
#ifndef _WINDOWS
|
||||||
+ switch(d){
|
- {CTRL|'\\', toggle_xterm_mouse},
|
||||||
+ case 'a' : return '\340';
|
+ {CTRL|'|', toggle_xterm_mouse},
|
||||||
+ case 'e' : return '\350';
|
#endif
|
||||||
+ case 'i' : return '\354';
|
#endif
|
||||||
+ case 'o' : return '\362';
|
{CTRL|'A', gotobol},
|
||||||
+ case 'u' : return '\371';
|
Index: alpine-2.11/pico/efunc.h
|
||||||
+ case 'A' : return '\300';
|
===================================================================
|
||||||
+ case 'E' : return '\310';
|
--- alpine-2.11.orig/pico/efunc.h
|
||||||
+ case 'I' : return '\314';
|
+++ alpine-2.11/pico/efunc.h
|
||||||
+ case 'O' : return '\322';
|
@@ -54,6 +54,9 @@ extern int forwline(int, int);
|
||||||
+ case 'U' : return '\331';
|
extern int backline(int, int);
|
||||||
+ }
|
extern int gotobop(int, int);
|
||||||
+ break;
|
extern int gotoeop(int, int);
|
||||||
+ case 'o' :
|
+extern int pineaccent(int, int);
|
||||||
+ switch(d){
|
+extern unsigned char accent(UCS, UCS);
|
||||||
+ case 'a' : return '\345';
|
+extern unsigned char GetAccent(void);
|
||||||
+ case 'A' : return '\305';
|
extern int forwpage(int, int);
|
||||||
+ case '/' : return '\370';
|
extern int backpage(int, int);
|
||||||
+ case 'r' : return '\256';
|
extern int scrollupline(int, int);
|
||||||
+ case 'R' : return '\256';
|
Index: alpine-2.11/pico/main.c
|
||||||
+ case 'c' : return '\251';
|
===================================================================
|
||||||
+ case 'C' : return '\251';
|
--- alpine-2.11.orig/pico/main.c
|
||||||
+ }
|
+++ alpine-2.11/pico/main.c
|
||||||
+ break;
|
@@ -416,6 +416,12 @@ main(int argc, char *argv[])
|
||||||
+ case '-' :
|
emlwrite(_("You may possibly have new mail."), NULL);
|
||||||
+ switch(d){
|
}
|
||||||
+ case 'o' : return '\272';
|
|
||||||
+ case 'O' : return '\272';
|
+ if (c == (CTRL|'\\')){
|
||||||
+ case '0' : return '\272';
|
+ c = GetAccent();
|
||||||
+ case 'a' : return '\252';
|
+ if (!c)
|
||||||
+ case 'A' : return '\252';
|
+ c = NODATA;
|
||||||
+ case 'l' : return '\243';
|
+ }
|
||||||
+ case 'L' : return '\243';
|
+
|
||||||
+ }
|
if(km_popped)
|
||||||
+ break;
|
switch(c){
|
||||||
+ case 'O' :
|
case NODATA:
|
||||||
+ switch(d){
|
Index: alpine-2.11/pico/search.c
|
||||||
+ case '/' : return '\330';
|
===================================================================
|
||||||
+ case 'r' : return '\256';
|
--- alpine-2.11.orig/pico/search.c
|
||||||
+ case 'R' : return '\256';
|
+++ alpine-2.11/pico/search.c
|
||||||
+ case 'c' : return '\251';
|
@@ -278,7 +278,7 @@ forwsearch(int f, int n)
|
||||||
+ case 'C' : return '\251';
|
}
|
||||||
+ }
|
|
||||||
+ case '/' :
|
if(status + curwp->w_doto >= llength(curwp->w_dotp) ||
|
||||||
+ switch(d){
|
- !eq(defpat[status],lgetc(curwp->w_dotp, curwp->w_doto + status).c))
|
||||||
+ case 'o' : return '\370';
|
+ !eq((unsigned char)defpat[status],lgetc(curwp->w_dotp, curwp->w_doto + status).c))
|
||||||
+ case 'O' : return '\330';
|
break; /* do nothing! */
|
||||||
+ }
|
status++;
|
||||||
+ break;
|
}
|
||||||
+ case 'a' :
|
@@ -931,7 +931,7 @@ forscan(int *wrapt, /* boolean indicatin
|
||||||
+ switch(d){
|
c = lgetc(curline, curoff++).c; /* get the char */
|
||||||
+ case 'e' : return '\346';
|
|
||||||
+ case 'E' : return '\346';
|
/* test it against first char in pattern */
|
||||||
+ }
|
- if (eq(c, patrn[0]) != FALSE) { /* if we find it..*/
|
||||||
+ break;
|
+ if (eq(c, (unsigned char)patrn[0]) != FALSE) { /* if we find it..*/
|
||||||
+ case 'A' :
|
/* setup match pointers */
|
||||||
+ switch(d){
|
matchline = curline;
|
||||||
+ case 'E' : return '\306';
|
matchoff = curoff;
|
||||||
+ case 'e' : return '\306';
|
@@ -952,7 +952,7 @@ forscan(int *wrapt, /* boolean indicatin
|
||||||
+ }
|
return(FALSE);
|
||||||
+ break;
|
|
||||||
+ case ',' :
|
/* and test it against the pattern */
|
||||||
+ switch(d){
|
- if (eq(*patptr, c) == FALSE)
|
||||||
+ case 'c' : return '\347';
|
+ if (eq((unsigned char) *patptr, c) == FALSE)
|
||||||
+ case 'C' : return '\307';
|
goto fail;
|
||||||
+ }
|
}
|
||||||
+ break;
|
|
||||||
+ case '\\' :
|
|
||||||
+ switch(d){
|
|
||||||
+ case '?' : return '\277';
|
|
||||||
+ case '!' : return '\241';
|
|
||||||
+ }
|
|
||||||
+ break;
|
|
||||||
+ case 's' :
|
|
||||||
+ switch(d){
|
|
||||||
+ case 's' : return '\337';
|
|
||||||
+ }
|
|
||||||
+ break;
|
|
||||||
+ case 'l' :
|
|
||||||
+ switch(d){
|
|
||||||
+ case 'l' : return '\243';
|
|
||||||
+ }
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
+ return '\0';
|
|
||||||
+ }
|
|
||||||
|
|
||||||
/*
|
|
||||||
* go forword to the end of the current paragraph
|
|
||||||
diff -rc alpine-2.10/pico/composer.c alpine-2.10.WrtAcc/pico/composer.c
|
|
||||||
*** alpine-2.10/pico/composer.c 2013-01-11 19:45:41.000000000 -0700
|
|
||||||
--- alpine-2.10.WrtAcc/pico/composer.c 2013-01-11 20:43:11.000000000 -0700
|
|
||||||
***************
|
|
||||||
*** 2015,2021 ****
|
|
||||||
tbufp = &strng[ods.p_len];
|
|
||||||
|
|
||||||
if(VALID_KEY(ch)){ /* char input */
|
|
||||||
! /*
|
|
||||||
* if we are allowing editing, insert the new char
|
|
||||||
* end up leaving tbufp pointing to newly
|
|
||||||
* inserted character in string, and offset to the
|
|
||||||
--- 2015,2021 ----
|
|
||||||
tbufp = &strng[ods.p_len];
|
|
||||||
|
|
||||||
if(VALID_KEY(ch)){ /* char input */
|
|
||||||
! insert_char:/*
|
|
||||||
* if we are allowing editing, insert the new char
|
|
||||||
* end up leaving tbufp pointing to newly
|
|
||||||
* inserted character in string, and offset to the
|
|
||||||
***************
|
|
||||||
*** 2095,2100 ****
|
|
||||||
--- 2095,2107 ----
|
|
||||||
}
|
|
||||||
else { /* interpret ch as a command */
|
|
||||||
switch (ch = normalize_cmd(ch, ckm, 2)) {
|
|
||||||
+ case (CTRL|'\\') :
|
|
||||||
+ if (ch = GetAccent())
|
|
||||||
+ goto insert_char;
|
|
||||||
+ else
|
|
||||||
+ clearcursor();
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
case (CTRL|KEY_LEFT): /* word skip left */
|
|
||||||
if(ods.p_ind > 0) /* Scoot one char left if possible */
|
|
||||||
ods.p_ind--;
|
|
||||||
diff -rc alpine-2.10/pico/display.c alpine-2.10.WrtAcc/pico/display.c
|
|
||||||
*** alpine-2.10/pico/display.c 2013-01-11 11:25:29.000000000 -0700
|
|
||||||
--- alpine-2.10.WrtAcc/pico/display.c 2013-01-11 20:43:11.000000000 -0700
|
|
||||||
***************
|
|
||||||
*** 1751,1756 ****
|
|
||||||
--- 1751,1761 ----
|
|
||||||
b = &buf[ucs4_strlen(buf)];
|
|
||||||
continue;
|
|
||||||
|
|
||||||
+ case (CTRL|'\\'):
|
|
||||||
+ if (c = GetAccent())
|
|
||||||
+ goto text;
|
|
||||||
+ continue;
|
|
||||||
+
|
|
||||||
case (CTRL|'F') : /* CTRL-F forward a char*/
|
|
||||||
case KEY_RIGHT :
|
|
||||||
if(*b == '\0')
|
|
||||||
***************
|
|
||||||
*** 1869,1875 ****
|
|
||||||
#endif
|
|
||||||
|
|
||||||
default :
|
|
||||||
!
|
|
||||||
/* look for match in extra_v */
|
|
||||||
for(i = 0; i < 12; i++)
|
|
||||||
if(c && c == extra_v[i]){
|
|
||||||
--- 1874,1880 ----
|
|
||||||
#endif
|
|
||||||
|
|
||||||
default :
|
|
||||||
! text:
|
|
||||||
/* look for match in extra_v */
|
|
||||||
for(i = 0; i < 12; i++)
|
|
||||||
if(c && c == extra_v[i]){
|
|
||||||
diff -rc alpine-2.10/pico/ebind.h alpine-2.10.WrtAcc/pico/ebind.h
|
|
||||||
*** alpine-2.10/pico/ebind.h 2013-01-11 11:25:29.000000000 -0700
|
|
||||||
--- alpine-2.10.WrtAcc/pico/ebind.h 2013-01-11 20:43:11.000000000 -0700
|
|
||||||
***************
|
|
||||||
*** 61,67 ****
|
|
||||||
#ifdef MOUSE
|
|
||||||
{KEY_MOUSE, mousepress},
|
|
||||||
#ifndef _WINDOWS
|
|
||||||
! {CTRL|'\\', toggle_xterm_mouse},
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
{CTRL|'A', gotobol},
|
|
||||||
--- 61,67 ----
|
|
||||||
#ifdef MOUSE
|
|
||||||
{KEY_MOUSE, mousepress},
|
|
||||||
#ifndef _WINDOWS
|
|
||||||
! {CTRL|'|', toggle_xterm_mouse},
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
{CTRL|'A', gotobol},
|
|
||||||
***************
|
|
||||||
*** 100,106 ****
|
|
||||||
{CTRL|KEY_HOME, gotobob},
|
|
||||||
{CTRL|KEY_END, gotoeob},
|
|
||||||
{0x7F, backdel},
|
|
||||||
! {0, NULL}
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
--- 100,108 ----
|
|
||||||
{CTRL|KEY_HOME, gotobob},
|
|
||||||
{CTRL|KEY_END, gotoeob},
|
|
||||||
{0x7F, backdel},
|
|
||||||
! {CTRL|'\\', pineaccent},
|
|
||||||
! {0,
|
|
||||||
! NULL}
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
***************
|
|
||||||
*** 123,129 ****
|
|
||||||
#ifdef MOUSE
|
|
||||||
{KEY_MOUSE, mousepress},
|
|
||||||
#ifndef _WINDOWS
|
|
||||||
! {CTRL|'\\', toggle_xterm_mouse},
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
{CTRL|'A', gotobol},
|
|
||||||
--- 125,131 ----
|
|
||||||
#ifdef MOUSE
|
|
||||||
{KEY_MOUSE, mousepress},
|
|
||||||
#ifndef _WINDOWS
|
|
||||||
! {CTRL|'|', toggle_xterm_mouse},
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
{CTRL|'A', gotobol},
|
|
||||||
diff -rc alpine-2.10/pico/efunc.h alpine-2.10.WrtAcc/pico/efunc.h
|
|
||||||
*** alpine-2.10/pico/efunc.h 2013-01-11 11:25:29.000000000 -0700
|
|
||||||
--- alpine-2.10.WrtAcc/pico/efunc.h 2013-01-11 20:43:11.000000000 -0700
|
|
||||||
***************
|
|
||||||
*** 54,59 ****
|
|
||||||
--- 54,62 ----
|
|
||||||
extern int backline(int, int);
|
|
||||||
extern int gotobop(int, int);
|
|
||||||
extern int gotoeop(int, int);
|
|
||||||
+ extern int pineaccent(int, int);
|
|
||||||
+ extern unsigned char accent(UCS, UCS);
|
|
||||||
+ extern unsigned char GetAccent(void);
|
|
||||||
extern int forwpage(int, int);
|
|
||||||
extern int backpage(int, int);
|
|
||||||
extern int scrollupline(int, int);
|
|
||||||
diff -rc alpine-2.10/pico/main.c alpine-2.10.WrtAcc/pico/main.c
|
|
||||||
*** alpine-2.10/pico/main.c 2013-01-11 11:25:29.000000000 -0700
|
|
||||||
--- alpine-2.10.WrtAcc/pico/main.c 2013-01-11 20:43:11.000000000 -0700
|
|
||||||
***************
|
|
||||||
*** 416,421 ****
|
|
||||||
--- 416,427 ----
|
|
||||||
emlwrite(_("You may possibly have new mail."), NULL);
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (c == (CTRL|'\\')){
|
|
||||||
+ c = GetAccent();
|
|
||||||
+ if (!c)
|
|
||||||
+ c = NODATA;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if(km_popped)
|
|
||||||
switch(c){
|
|
||||||
case NODATA:
|
|
||||||
diff -rc alpine-2.10/pico/search.c alpine-2.10.WrtAcc/pico/search.c
|
|
||||||
*** alpine-2.10/pico/search.c 2013-01-11 11:25:29.000000000 -0700
|
|
||||||
--- alpine-2.10.WrtAcc/pico/search.c 2013-01-11 20:43:11.000000000 -0700
|
|
||||||
***************
|
|
||||||
*** 274,280 ****
|
|
||||||
}
|
|
||||||
|
|
||||||
if(status + curwp->w_doto >= llength(curwp->w_dotp) ||
|
|
||||||
! !eq(defpat[status],lgetc(curwp->w_dotp, curwp->w_doto + status).c))
|
|
||||||
break; /* do nothing! */
|
|
||||||
status++;
|
|
||||||
}
|
|
||||||
--- 274,280 ----
|
|
||||||
}
|
|
||||||
|
|
||||||
if(status + curwp->w_doto >= llength(curwp->w_dotp) ||
|
|
||||||
! !eq((unsigned char)defpat[status],lgetc(curwp->w_dotp, curwp->w_doto + status).c))
|
|
||||||
break; /* do nothing! */
|
|
||||||
status++;
|
|
||||||
}
|
|
||||||
***************
|
|
||||||
*** 927,933 ****
|
|
||||||
c = lgetc(curline, curoff++).c; /* get the char */
|
|
||||||
|
|
||||||
/* test it against first char in pattern */
|
|
||||||
! if (eq(c, patrn[0]) != FALSE) { /* if we find it..*/
|
|
||||||
/* setup match pointers */
|
|
||||||
matchline = curline;
|
|
||||||
matchoff = curoff;
|
|
||||||
--- 927,933 ----
|
|
||||||
c = lgetc(curline, curoff++).c; /* get the char */
|
|
||||||
|
|
||||||
/* test it against first char in pattern */
|
|
||||||
! if (eq(c, (unsigned char)patrn[0]) != FALSE) { /* if we find it..*/
|
|
||||||
/* setup match pointers */
|
|
||||||
matchline = curline;
|
|
||||||
matchoff = curoff;
|
|
||||||
***************
|
|
||||||
*** 948,954 ****
|
|
||||||
return(FALSE);
|
|
||||||
|
|
||||||
/* and test it against the pattern */
|
|
||||||
! if (eq(*patptr, c) == FALSE)
|
|
||||||
goto fail;
|
|
||||||
}
|
|
||||||
|
|
||||||
--- 948,954 ----
|
|
||||||
return(FALSE);
|
|
||||||
|
|
||||||
/* and test it against the pattern */
|
|
||||||
! if (eq((unsigned char) *patptr, c) == FALSE)
|
|
||||||
goto fail;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
7200
chappa-fancy.patch
7200
chappa-fancy.patch
File diff suppressed because it is too large
Load Diff
@ -1,111 +1,112 @@
|
|||||||
diff -rc alpine-2.10/alpine/mailcmd.c alpine-2.10.ignoresize/alpine/mailcmd.c
|
---
|
||||||
*** alpine-2.10/alpine/mailcmd.c 2013-01-11 15:21:34.000000000 -0700
|
alpine/mailcmd.c | 3 +++
|
||||||
--- alpine-2.10.ignoresize/alpine/mailcmd.c 2013-01-11 20:43:20.000000000 -0700
|
pith/conf.c | 2 ++
|
||||||
***************
|
pith/conftype.h | 1 +
|
||||||
*** 3349,3354 ****
|
pith/pine.hlp | 35 +++++++++++++++++++++++++++++++++++
|
||||||
--- 3349,3357 ----
|
pith/save.c | 1 +
|
||||||
{-1, 0, NULL, NULL}
|
5 files changed, 42 insertions(+)
|
||||||
};
|
|
||||||
|
Index: alpine-2.11/alpine/mailcmd.c
|
||||||
+ if(F_ON(F_IGNORE_SIZE, ps_global))
|
===================================================================
|
||||||
+ return 'y';
|
--- alpine-2.11.orig/alpine/mailcmd.c
|
||||||
+
|
+++ alpine-2.11/alpine/mailcmd.c
|
||||||
if(flags & SSCP_INIT || flags & SSCP_END){
|
@@ -3368,6 +3368,9 @@ save_size_changed_prompt(long msgno, int
|
||||||
if(flags & SSCP_END && possible_corruption)
|
{-1, 0, NULL, NULL}
|
||||||
q_status_message(SM_ORDER, 3, 3, "There is possible data corruption, check the results");
|
};
|
||||||
diff -rc alpine-2.10/pith/conf.c alpine-2.10.ignoresize/pith/conf.c
|
|
||||||
*** alpine-2.10/pith/conf.c 2013-01-11 19:45:41.000000000 -0700
|
+ if(F_ON(F_IGNORE_SIZE, ps_global))
|
||||||
--- alpine-2.10.ignoresize/pith/conf.c 2013-01-11 20:43:20.000000000 -0700
|
+ return 'y';
|
||||||
***************
|
+
|
||||||
*** 3082,3087 ****
|
if(flags & SSCP_INIT || flags & SSCP_END){
|
||||||
--- 3082,3089 ----
|
if(flags & SSCP_END && possible_corruption)
|
||||||
F_FULL_AUTO_EXPUNGE, h_config_full_auto_expunge, PREF_MISC, 0},
|
q_status_message(SM_ORDER, 3, 3, "There is possible data corruption, check the results");
|
||||||
{"force-arrow-cursor", NULL,
|
Index: alpine-2.11/pith/conf.c
|
||||||
F_FORCE_ARROW, h_config_force_arrow, PREF_MISC, 0},
|
===================================================================
|
||||||
+ {"ignore-size-changes", NULL,
|
--- alpine-2.11.orig/pith/conf.c
|
||||||
+ F_IGNORE_SIZE, h_config_ignore_size, PREF_MISC, 0},
|
+++ alpine-2.11/pith/conf.c
|
||||||
{"maildrops-preserve-state", NULL,
|
@@ -3123,6 +3123,8 @@ feature_list(int index)
|
||||||
F_MAILDROPS_PRESERVE_STATE, h_config_maildrops_preserve_state,
|
F_FULL_AUTO_EXPUNGE, h_config_full_auto_expunge, PREF_MISC, 0},
|
||||||
PREF_MISC, 0},
|
{"force-arrow-cursor", NULL,
|
||||||
diff -rc alpine-2.10/pith/conftype.h alpine-2.10.ignoresize/pith/conftype.h
|
F_FORCE_ARROW, h_config_force_arrow, PREF_MISC, 0},
|
||||||
*** alpine-2.10/pith/conftype.h 2013-01-11 19:45:41.000000000 -0700
|
+ {"ignore-size-changes", NULL,
|
||||||
--- alpine-2.10.ignoresize/pith/conftype.h 2013-01-11 20:43:20.000000000 -0700
|
+ F_IGNORE_SIZE, h_config_ignore_size, PREF_MISC, 0},
|
||||||
***************
|
{"maildrops-preserve-state", NULL,
|
||||||
*** 335,340 ****
|
F_MAILDROPS_PRESERVE_STATE, h_config_maildrops_preserve_state,
|
||||||
--- 335,341 ----
|
PREF_MISC, 0},
|
||||||
F_FORCE_ARROW,
|
Index: alpine-2.11/pith/conftype.h
|
||||||
F_PRUNE_USES_ISO,
|
===================================================================
|
||||||
F_ALT_ED_NOW,
|
--- alpine-2.11.orig/pith/conftype.h
|
||||||
+ F_IGNORE_SIZE,
|
+++ alpine-2.11/pith/conftype.h
|
||||||
F_SHOW_DELAY_CUE,
|
@@ -346,6 +346,7 @@ typedef enum {
|
||||||
F_CANCEL_CONFIRM,
|
F_FORCE_ARROW,
|
||||||
F_AUTO_OPEN_NEXT_UNREAD,
|
F_PRUNE_USES_ISO,
|
||||||
diff -rc alpine-2.10/pith/pine.hlp alpine-2.10.ignoresize/pith/pine.hlp
|
F_ALT_ED_NOW,
|
||||||
*** alpine-2.10/pith/pine.hlp 2013-01-11 20:33:27.000000000 -0700
|
+ F_IGNORE_SIZE,
|
||||||
--- alpine-2.10.ignoresize/pith/pine.hlp 2013-01-11 20:43:20.000000000 -0700
|
F_SHOW_DELAY_CUE,
|
||||||
***************
|
F_CANCEL_CONFIRM,
|
||||||
*** 3251,3256 ****
|
F_AUTO_OPEN_NEXT_UNREAD,
|
||||||
--- 3251,3257 ----
|
Index: alpine-2.11/pith/pine.hlp
|
||||||
<li><a href="h_config_full_auto_expunge">FEATURE: <!--#echo var="FEAT_expunge-without-confirm-everywhere"--></a>
|
===================================================================
|
||||||
<li><a href="h_config_no_fcc_attach">FEATURE: <!--#echo var="FEAT_fcc-without-attachments"--></a>
|
--- alpine-2.11.orig/pith/pine.hlp
|
||||||
<li><a href="h_config_force_arrow">FEATURE: <!--#echo var="FEAT_force-arrow-cursor"--></a>
|
+++ alpine-2.11/pith/pine.hlp
|
||||||
+ <li><a href="h_config_ignore_size">FEATURE: <!--#echo var="FEAT_ignore-size-changes"--></a>
|
@@ -3296,6 +3296,7 @@ There are also additional details on
|
||||||
<li><a href="h_config_forward_as_attachment">FEATURE: <!--#echo var="FEAT_forward-as-attachment"--></a>
|
<li><a href="h_config_full_auto_expunge">FEATURE: <!--#echo var="FEAT_expunge-without-confirm-everywhere"--></a>
|
||||||
<li><a href="h_config_quell_empty_dirs">FEATURE: <!--#echo var="FEAT_quell-empty-directories"--></a>
|
<li><a href="h_config_no_fcc_attach">FEATURE: <!--#echo var="FEAT_fcc-without-attachments"--></a>
|
||||||
<li><a href="h_config_hide_nntp_path">FEATURE: <!--#echo var="FEAT_hide-nntp-path"--></a>
|
<li><a href="h_config_force_arrow">FEATURE: <!--#echo var="FEAT_force-arrow-cursor"--></a>
|
||||||
***************
|
+<li><a href="h_config_ignore_size">FEATURE: <!--#echo var="FEAT_ignore-size-changes"--></a>
|
||||||
*** 30437,30442 ****
|
<li><a href="h_config_forward_as_attachment">FEATURE: <!--#echo var="FEAT_forward-as-attachment"--></a>
|
||||||
--- 30438,30477 ----
|
<li><a href="h_config_preserve_field">FEATURE: <!--#echo var="FEAT_preserve-original-fields"--></a>
|
||||||
|
<li><a href="h_config_quell_empty_dirs">FEATURE: <!--#echo var="FEAT_quell-empty-directories"--></a>
|
||||||
<P>
|
@@ -30787,6 +30788,40 @@ but that is not implemented.
|
||||||
<End of help on this topic>
|
|
||||||
+ </BODY>
|
<P>
|
||||||
+ </HTML>
|
<End of help on this topic>
|
||||||
+ ====== h_config_ignore_size =====
|
+</BODY>
|
||||||
+ <HTML>
|
+</HTML>
|
||||||
+ <HEAD>
|
+====== h_config_ignore_size =====
|
||||||
+ <TITLE>FEATURE: <!--#echo var="FEAT_ignore-size-changes"--></TITLE>
|
+<HTML>
|
||||||
+ </HEAD>
|
+<HEAD>
|
||||||
+ <BODY>
|
+<TITLE>FEATURE: <!--#echo var="FEAT_ignore-size-changes"--></TITLE>
|
||||||
+ <H1>FEATURE: <!--#echo var="FEAT_ignore-size-changes"--></H1>
|
+</HEAD>
|
||||||
+
|
+<BODY>
|
||||||
+ When you have an account residing in an IMAP server, Alpine gets the size of
|
+<H1>FEATURE: <!--#echo var="FEAT_ignore-size-changes"--></H1>
|
||||||
+ each message from the server. However, when Alpine saves a message residing
|
+
|
||||||
+ in an IMAP server, Alpine computes the size of the message independently. If
|
+When you have an account residing in an IMAP server, Alpine gets the size of
|
||||||
+ these two numbers do not match for a message, Alpine asks you if you still
|
+each message from the server. However, when Alpine saves a message residing
|
||||||
+ want to take the risk of saving the message, since data corruption or loss
|
+in an IMAP server, Alpine computes the size of the message independently. If
|
||||||
+ of data could result of this save.
|
+these two numbers do not match for a message, Alpine asks you if you still
|
||||||
+
|
+want to take the risk of saving the message, since data corruption or loss
|
||||||
+ <P>
|
+of data could result of this save.
|
||||||
+ Sometimes the root of this problem is that the server is defective, and
|
+
|
||||||
+ there will not be loss of information when saving such message. Enabling
|
+<P>
|
||||||
+ this feature will make Aline ignore such error and continue saving the
|
+Sometimes the root of this problem is that the server is defective, and
|
||||||
+ message. If you can determine that this is the case, enable this feature
|
+there will not be loss of information when saving such message. Enabling
|
||||||
+ so that the saving operation will succeed. An example of a defective server
|
+this feature will make Aline ignore such error and continue saving the
|
||||||
+ is the Gmail IMAP server. Another example is some versions of the Exchange
|
+message. If you can determine that this is the case, enable this feature
|
||||||
+ server.
|
+so that the saving operation will succeed. An example of a defective server
|
||||||
+
|
+is the Gmail IMAP server. Another example is some versions of the Exchange
|
||||||
+ <P>
|
+server.
|
||||||
+ It is recommended that this feature be disabled most of the time and only
|
+
|
||||||
+ enabled when you find a server which you can determine that has the above
|
+<P>
|
||||||
+ mentioned defect, but be disabled again after making this operation
|
+It is recommended that this feature be disabled most of the time and only
|
||||||
+ succeed.
|
+enabled when you find a server which you can determine that has the above
|
||||||
+
|
+mentioned defect, but be disabled again after making this operation
|
||||||
+ <P>
|
+succeed.
|
||||||
+ <End of help on this topic>
|
+
|
||||||
</BODY>
|
+<P>
|
||||||
</HTML>
|
+<End of help on this topic>
|
||||||
====== h_config_force_low_speed =====
|
</BODY>
|
||||||
diff -rc alpine-2.10/pith/save.c alpine-2.10.ignoresize/pith/save.c
|
</HTML>
|
||||||
*** alpine-2.10/pith/save.c 2013-01-11 11:26:44.000000000 -0700
|
====== h_config_force_low_speed =====
|
||||||
--- alpine-2.10.ignoresize/pith/save.c 2013-01-11 20:43:20.000000000 -0700
|
Index: alpine-2.11/pith/save.c
|
||||||
***************
|
===================================================================
|
||||||
*** 1157,1162 ****
|
--- alpine-2.11.orig/pith/save.c
|
||||||
--- 1157,1163 ----
|
+++ alpine-2.11/pith/save.c
|
||||||
snprintf(buf, sizeof(buf),
|
@@ -1157,6 +1157,7 @@ long save_fetch_append_cb(MAILSTREAM *st
|
||||||
"Message to save shrank: source msg # %ld may be saved incorrectly",
|
snprintf(buf, sizeof(buf),
|
||||||
mn_raw2m(pkg->msgmap, raw));
|
"Message to save shrank: source msg # %ld may be saved incorrectly",
|
||||||
+ if(F_OFF(F_IGNORE_SIZE, ps_global))
|
mn_raw2m(pkg->msgmap, raw));
|
||||||
q_status_message(SM_ORDER, 0, 3, buf);
|
+ if(F_OFF(F_IGNORE_SIZE, ps_global))
|
||||||
}
|
q_status_message(SM_ORDER, 0, 3, buf);
|
||||||
else{
|
}
|
||||||
|
else{
|
||||||
|
@ -1,40 +1,43 @@
|
|||||||
diff -rc alpine-2.10/pico/display.c alpine-2.10.insertpat/pico/display.c
|
---
|
||||||
*** alpine-2.10/pico/display.c 2013-01-11 11:25:29.000000000 -0700
|
pico/display.c | 12 ++++++++++++
|
||||||
--- alpine-2.10.insertpat/pico/display.c 2013-01-11 20:43:15.000000000 -0700
|
pico/search.c | 4 ++++
|
||||||
***************
|
2 files changed, 16 insertions(+)
|
||||||
*** 1760,1765 ****
|
|
||||||
--- 1760,1777 ----
|
Index: alpine-2.11/pico/display.c
|
||||||
|
===================================================================
|
||||||
continue;
|
--- alpine-2.11.orig/pico/display.c
|
||||||
|
+++ alpine-2.11/pico/display.c
|
||||||
+ case (CTRL|'N'): /* Insert pattern */
|
@@ -1760,6 +1760,18 @@ mlreplyd(UCS *prompt, UCS *buf, int nbuf
|
||||||
+ if (pat[0] != '\0'){
|
|
||||||
+ ucs4_strncpy(buf+ucs4_strlen(buf), pat, NPAT);
|
continue;
|
||||||
+ pputs(pat,1);
|
|
||||||
+ b = &buf[ucs4_strlen(buf)];
|
+ case (CTRL|'N'): /* Insert pattern */
|
||||||
+ dline.vused += ucs4_strlen(pat);
|
+ if (pat[0] != '\0'){
|
||||||
+ changed = TRUE;
|
+ ucs4_strncpy(buf+ucs4_strlen(buf), pat, NPAT);
|
||||||
+ }
|
+ pputs(pat,1);
|
||||||
+ else
|
+ b = &buf[ucs4_strlen(buf)];
|
||||||
+ (*term.t_beep)();
|
+ dline.vused += ucs4_strlen(pat);
|
||||||
+ continue;
|
+ changed = TRUE;
|
||||||
+
|
+ }
|
||||||
case (CTRL|'G') : /* CTRL-G help */
|
+ else
|
||||||
if(term.t_mrow == 0 && km_popped == 0){
|
+ (*term.t_beep)();
|
||||||
movecursor(term.t_nrow-2, 0);
|
+ continue;
|
||||||
diff -rc alpine-2.10/pico/search.c alpine-2.10.insertpat/pico/search.c
|
+
|
||||||
*** alpine-2.10/pico/search.c 2013-01-11 11:25:29.000000000 -0700
|
case (CTRL|'G') : /* CTRL-G help */
|
||||||
--- alpine-2.10.insertpat/pico/search.c 2013-01-11 20:43:15.000000000 -0700
|
if(term.t_mrow == 0 && km_popped == 0){
|
||||||
***************
|
movecursor(term.t_nrow-2, 0);
|
||||||
*** 76,81 ****
|
Index: alpine-2.11/pico/search.c
|
||||||
--- 76,85 ----
|
===================================================================
|
||||||
N_("~ Hitting only ~R~e~t~u~r~n or at the prompt will cause the"),
|
--- alpine-2.11.orig/pico/search.c
|
||||||
N_(" search to be made with the default value."),
|
+++ alpine-2.11/pico/search.c
|
||||||
" ",
|
@@ -76,6 +76,10 @@ N_(" brackets. This string is th
|
||||||
+ N_("~ Hitting ~^~N will reinsert the last string you searched for"),
|
N_("~ Hitting only ~R~e~t~u~r~n or at the prompt will cause the"),
|
||||||
+ N_(" so that you can edit it (in case you made a mistake entering the"),
|
N_(" search to be made with the default value."),
|
||||||
+ N_(" search pattern the first time)."),
|
" ",
|
||||||
+ " ",
|
+N_("~ Hitting ~^~N will reinsert the last string you searched for"),
|
||||||
N_(" The text search is not case sensitive, and will examine the"),
|
+N_(" so that you can edit it (in case you made a mistake entering the"),
|
||||||
N_(" entire message."),
|
+N_(" search pattern the first time)."),
|
||||||
" ",
|
+" ",
|
||||||
|
N_(" The text search is not case sensitive, and will examine the"),
|
||||||
|
N_(" entire message."),
|
||||||
|
" ",
|
||||||
|
7347
chappa-maildir.patch
7347
chappa-maildir.patch
File diff suppressed because it is too large
Load Diff
@ -1,45 +1,35 @@
|
|||||||
diff -rc alpine-2.10/imap/src/c-client/mail.c alpine-2.10.unixnullbug/imap/src/c-client/mail.c
|
---
|
||||||
*** alpine-2.10/imap/src/c-client/mail.c 2013-01-11 15:21:34.000000000 -0700
|
imap/src/c-client/mail.c | 8 ++++++--
|
||||||
--- alpine-2.10.unixnullbug/imap/src/c-client/mail.c 2013-01-11 20:45:05.000000000 -0700
|
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||||
***************
|
|
||||||
*** 3352,3364 ****
|
Index: alpine-2.11/imap/src/c-client/mail.c
|
||||||
long flags)
|
===================================================================
|
||||||
{
|
--- alpine-2.11.orig/imap/src/c-client/mail.c
|
||||||
STRINGLIST *hdrs;
|
+++ alpine-2.11/imap/src/c-client/mail.c
|
||||||
! int notfound;
|
@@ -3361,13 +3361,13 @@ unsigned long mail_filter (char *text,un
|
||||||
unsigned long i;
|
long flags)
|
||||||
char c,*s,*e,*t,tmp[MAILTMPLEN];
|
{
|
||||||
char *src = text;
|
STRINGLIST *hdrs;
|
||||||
char *dst = src;
|
- int notfound;
|
||||||
char *end = text + len;
|
+ int notfound, fix = text[len - 1] == '\0';
|
||||||
! text[len] = '\012'; /* guard against running off buffer */
|
unsigned long i;
|
||||||
while (src < end) { /* process header */
|
char c,*s,*e,*t,tmp[MAILTMPLEN];
|
||||||
/* slurp header line name */
|
char *src = text;
|
||||||
for (s = src,e = s + MAILTMPLEN - 1,e = (e < end ? e : end),t = tmp;
|
char *dst = src;
|
||||||
--- 3352,3364 ----
|
char *end = text + len;
|
||||||
long flags)
|
- text[len] = '\012'; /* guard against running off buffer */
|
||||||
{
|
+ text[fix ? len - 1 : len] = '\012'; /* guard against running off buffer */
|
||||||
STRINGLIST *hdrs;
|
while (src < end) { /* process header */
|
||||||
! int notfound, fix = text[len - 1] == '\0';
|
/* slurp header line name */
|
||||||
unsigned long i;
|
for (s = src,e = s + MAILTMPLEN - 1,e = (e < end ? e : end),t = tmp;
|
||||||
char c,*s,*e,*t,tmp[MAILTMPLEN];
|
@@ -3406,6 +3406,10 @@ unsigned long mail_filter (char *text,un
|
||||||
char *src = text;
|
}
|
||||||
char *dst = src;
|
}
|
||||||
char *end = text + len;
|
*dst = '\0'; /* tie off destination */
|
||||||
! text[fix ? len - 1 : len] = '\012'; /* guard against running off buffer */
|
+ if(fix){
|
||||||
while (src < end) { /* process header */
|
+ text[len] = '\012';
|
||||||
/* slurp header line name */
|
+ text[len-1] = '\0';
|
||||||
for (s = src,e = s + MAILTMPLEN - 1,e = (e < end ? e : end),t = tmp;
|
+ }
|
||||||
***************
|
return dst - text;
|
||||||
*** 3397,3402 ****
|
}
|
||||||
--- 3397,3406 ----
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*dst = '\0'; /* tie off destination */
|
|
||||||
+ if(fix){
|
|
||||||
+ text[len] = '\012';
|
|
||||||
+ text[len-1] = '\0';
|
|
||||||
+ }
|
|
||||||
return dst - text;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
@ -1,111 +0,0 @@
|
|||||||
diff -rc alpine-2.10/alpine/reply.c alpine-2.10.unverified/alpine/reply.c
|
|
||||||
*** alpine-2.10/alpine/reply.c 2013-01-11 11:19:33.000000000 -0700
|
|
||||||
--- alpine-2.10.unverified/alpine/reply.c 2013-01-11 16:20:11.000000000 -0700
|
|
||||||
***************
|
|
||||||
*** 1165,1173 ****
|
|
||||||
}
|
|
||||||
else if(!outgoing->newsgroups)
|
|
||||||
outgoing->newsgroups = cpystr(env->newsgroups);
|
|
||||||
- if(!IS_NEWS(ps_global->mail_stream))
|
|
||||||
- q_status_message(SM_ORDER, 2, 3,
|
|
||||||
- _("Replying to message that MAY or MAY NOT have been posted to newsgroup"));
|
|
||||||
}
|
|
||||||
|
|
||||||
return(ret);
|
|
||||||
--- 1165,1170 ----
|
|
||||||
diff -rc alpine-2.10/imap/src/c-client/imap4r1.c alpine-2.10.unverified/imap/src/c-client/imap4r1.c
|
|
||||||
*** alpine-2.10/imap/src/c-client/imap4r1.c 2011-01-09 21:00:20.000000000 -0700
|
|
||||||
--- alpine-2.10.unverified/imap/src/c-client/imap4r1.c 2013-01-11 16:20:11.000000000 -0700
|
|
||||||
***************
|
|
||||||
*** 4527,4532 ****
|
|
||||||
--- 4527,4533 ----
|
|
||||||
if (*env) { /* need to merge this header into envelope? */
|
|
||||||
if (!(*env)->newsgroups) { /* need Newsgroups? */
|
|
||||||
(*env)->newsgroups = nenv->newsgroups;
|
|
||||||
+ (*env)->ngpathexists = nenv->ngpathexists;
|
|
||||||
nenv->newsgroups = NIL;
|
|
||||||
}
|
|
||||||
if (!(*env)->followup_to) { /* need Followup-To? */
|
|
||||||
***************
|
|
||||||
*** 4581,4586 ****
|
|
||||||
--- 4582,4588 ----
|
|
||||||
if (oenv) { /* need to merge old envelope? */
|
|
||||||
(*env)->newsgroups = oenv->newsgroups;
|
|
||||||
oenv->newsgroups = NIL;
|
|
||||||
+ (*env)->ngpathexists = oenv->ngpathexists;
|
|
||||||
(*env)->followup_to = oenv->followup_to;
|
|
||||||
oenv->followup_to = NIL;
|
|
||||||
(*env)->references = oenv->references;
|
|
||||||
diff -rc alpine-2.10/imap/src/c-client/mail.h alpine-2.10.unverified/imap/src/c-client/mail.h
|
|
||||||
*** alpine-2.10/imap/src/c-client/mail.h 2013-01-11 15:21:34.000000000 -0700
|
|
||||||
--- alpine-2.10.unverified/imap/src/c-client/mail.h 2013-01-11 16:20:11.000000000 -0700
|
|
||||||
***************
|
|
||||||
*** 685,690 ****
|
|
||||||
--- 685,691 ----
|
|
||||||
/* Message envelope */
|
|
||||||
|
|
||||||
typedef struct mail_envelope {
|
|
||||||
+ unsigned int ngpathexists : 1; /* newsgroups may be bogus */
|
|
||||||
unsigned int incomplete : 1; /* envelope may be incomplete */
|
|
||||||
unsigned int imapenvonly : 1; /* envelope only has IMAP envelope */
|
|
||||||
char *remail; /* remail header if any */
|
|
||||||
diff -rc alpine-2.10/imap/src/c-client/rfc822.c alpine-2.10.unverified/imap/src/c-client/rfc822.c
|
|
||||||
*** alpine-2.10/imap/src/c-client/rfc822.c 2011-01-09 21:00:20.000000000 -0700
|
|
||||||
--- alpine-2.10.unverified/imap/src/c-client/rfc822.c 2013-01-11 16:20:11.000000000 -0700
|
|
||||||
***************
|
|
||||||
*** 128,133 ****
|
|
||||||
--- 128,134 ----
|
|
||||||
ENVELOPE *env = (*en = mail_newenvelope ());
|
|
||||||
BODY *body = bdy ? (*bdy = mail_newbody ()) : NIL;
|
|
||||||
long MIMEp = -1; /* flag that MIME semantics are in effect */
|
|
||||||
+ long PathP = NIL; /* flag that a Path: was seen */
|
|
||||||
parseline_t pl = (parseline_t) mail_parameters (NIL,GET_PARSELINE,NIL);
|
|
||||||
if (!host) host = BADHOST; /* make sure that host is non-null */
|
|
||||||
while (i && *s != '\n') { /* until end of header */
|
|
||||||
***************
|
|
||||||
*** 230,235 ****
|
|
||||||
--- 231,239 ----
|
|
||||||
*t++ = '\0';
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
+ case 'P': /* possible Path: */
|
|
||||||
+ if (!strcmp (tmp+1,"ATH")) env->ngpathexists = T;
|
|
||||||
+ break;
|
|
||||||
case 'R': /* possible Reply-To: */
|
|
||||||
if (!strcmp (tmp+1,"EPLY-TO"))
|
|
||||||
rfc822_parse_adrlist (&env->reply_to,d,host);
|
|
||||||
diff -rc alpine-2.10/pith/mailview.c alpine-2.10.unverified/pith/mailview.c
|
|
||||||
*** alpine-2.10/pith/mailview.c 2013-01-11 11:26:43.000000000 -0700
|
|
||||||
--- alpine-2.10.unverified/pith/mailview.c 2013-01-11 16:20:11.000000000 -0700
|
|
||||||
***************
|
|
||||||
*** 2379,2386 ****
|
|
||||||
format_addr_string(s, n, sect, "Return-Path: ", e->return_path,
|
|
||||||
flags, oacs, pc);
|
|
||||||
|
|
||||||
! if((which & FE_NEWSGROUPS) && e->newsgroups)
|
|
||||||
format_newsgroup_string("Newsgroups: ", e->newsgroups, flags, pc);
|
|
||||||
|
|
||||||
if((which & FE_FOLLOWUPTO) && e->followup_to)
|
|
||||||
format_newsgroup_string("Followup-To: ", e->followup_to, flags, pc);
|
|
||||||
--- 2379,2399 ----
|
|
||||||
format_addr_string(s, n, sect, "Return-Path: ", e->return_path,
|
|
||||||
flags, oacs, pc);
|
|
||||||
|
|
||||||
! if((which & FE_NEWSGROUPS) && e->newsgroups){
|
|
||||||
! int bogus = NIL;
|
|
||||||
format_newsgroup_string("Newsgroups: ", e->newsgroups, flags, pc);
|
|
||||||
+ if (!e->ngpathexists && e->message_id &&
|
|
||||||
+ strncmp (e->message_id,"<alpine.",8) &&
|
|
||||||
+ strncmp (e->message_id,"<Pine.",6) &&
|
|
||||||
+ strncmp (e->message_id,"<MS-C.",6) &&
|
|
||||||
+ strncmp (e->message_id,"<MailManager.",13) &&
|
|
||||||
+ strncmp (e->message_id,"<EasyMail.",11) &&
|
|
||||||
+ strncmp (e->message_id,"<ML-",4)) bogus = T;
|
|
||||||
+
|
|
||||||
+ if(bogus)
|
|
||||||
+ q_status_message(SM_ORDER, 0, 3,
|
|
||||||
+ "Unverified Newsgroup header -- Message MAY or MAY NOT have been posted");
|
|
||||||
+ }
|
|
||||||
|
|
||||||
if((which & FE_FOLLOWUPTO) && e->followup_to)
|
|
||||||
format_newsgroup_string("Followup-To: ", e->followup_to, flags, pc);
|
|
@ -1,5 +1,11 @@
|
|||||||
--- imap/src/mlock/mlock.c
|
---
|
||||||
+++ imap/src/mlock/mlock.c
|
imap/src/mlock/mlock.c | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
Index: alpine-2.11/imap/src/mlock/mlock.c
|
||||||
|
===================================================================
|
||||||
|
--- alpine-2.11.orig/imap/src/mlock/mlock.c
|
||||||
|
+++ alpine-2.11/imap/src/mlock/mlock.c
|
||||||
@@ -28,6 +28,7 @@
|
@@ -28,6 +28,7 @@
|
||||||
|
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
@ -1,6 +1,13 @@
|
|||||||
--- alpine/folder.c
|
---
|
||||||
+++ alpine/folder.c
|
alpine/folder.c | 2 +-
|
||||||
@@ -6013,7 +6013,7 @@
|
imap/src/c-client/mail.c | 10 ++++++++--
|
||||||
|
2 files changed, 9 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
Index: alpine-2.11/alpine/folder.c
|
||||||
|
===================================================================
|
||||||
|
--- alpine-2.11.orig/alpine/folder.c
|
||||||
|
+++ alpine-2.11/alpine/folder.c
|
||||||
|
@@ -6132,7 +6132,7 @@ folder_select_count(long int *count, int
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
case 14 : /* toggle comparison */
|
case 14 : /* toggle comparison */
|
||||||
@ -9,9 +16,11 @@
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
case -1 : /* cancel */
|
case -1 : /* cancel */
|
||||||
--- imap/src/c-client/mail.c
|
Index: alpine-2.11/imap/src/c-client/mail.c
|
||||||
+++ imap/src/c-client/mail.c
|
===================================================================
|
||||||
@@ -2931,8 +2931,14 @@
|
--- alpine-2.11.orig/imap/src/c-client/mail.c
|
||||||
|
+++ alpine-2.11/imap/src/c-client/mail.c
|
||||||
|
@@ -2940,8 +2940,14 @@ long mail_parse_date (MESSAGECACHE *elt,
|
||||||
/* parse time */
|
/* parse time */
|
||||||
d = strtoul (s+1,(char **) &s,10);
|
d = strtoul (s+1,(char **) &s,10);
|
||||||
if (*s != ':') return NIL;
|
if (*s != ':') return NIL;
|
||||||
|
Loading…
Reference in New Issue
Block a user