X-Git-Url: https://git.llucax.com/software/mutt-debian.git/blobdiff_plain/63918bfd01f66dbb07af0cac82359c0032ce6376..2e7182697857527a3a62b16740812f3a9a1d99b9:/debian/patches/features/compressed-folders?ds=sidebyside diff --git a/debian/patches/features/compressed-folders b/debian/patches/features/compressed-folders index 027bbec..d08371f 100644 --- a/debian/patches/features/compressed-folders +++ b/debian/patches/features/compressed-folders @@ -7,21 +7,16 @@ The home page for this patch is: http://www.spinnaker.de/mutt/compressed/ * Patch last synced with upstream: - - Date: 2005-09-29 - - File: http://www.spinnaker.de/mutt/compressed/patch-1.5.11.rr.compressed.1.gz + - Date: 2007-06-14 + - File: http://www.spinnaker.de/mutt/compressed/patch-1.5.16.rr.compressed.1.gz * Changes made: - - filterdiff -p1 \ - $(for f in Makefile.in config.h.in configure 'Muttrc*' doc/manual.txt \ - doc/manual.sgml 'doc/manual*.html' doc/muttrc.man; do echo "-x $f"; done) - - adjust the init.h hunk to the presence of group & ungroup - - 2006-07-15: adjust Makefile.am and doc/manual.xml.head to mutt-1.5.12 - - 2006-08-16: adjust Makefile.am mutt-1.5.13 + - 2007-06-14 myon: remove hunks for Muttrc* == END PATCH --- /dev/null -+++ compress.c -@@ -0,0 +1,487 @@ ++++ b/compress.c +@@ -0,0 +1,499 @@ +/* + * Copyright (C) 1997 Alain Penders + * @@ -128,7 +123,19 @@ The home page for this patch is: + int magic; + + if (is_new (path)) -+ return (find_compress_hook (M_CLOSEHOOK, path) ? 1 : 0); ++ { ++ char *dir_path = safe_strdup(path); ++ char *aux = strrchr(dir_path, '/'); ++ int dir_valid = 1; ++ if (aux) ++ { ++ *aux='\0'; ++ if (access(dir_path, W_OK|X_OK)) ++ dir_valid = 0; ++ } ++ safe_free((void**)&dir_path); ++ return dir_valid && (find_compress_hook (M_CLOSEHOOK, path) ? 1 : 0); ++ } + + magic = mx_get_magic (path); + @@ -182,10 +189,10 @@ The home page for this patch is: +} + +static const char * -+compresshook_format_str (char *dest, size_t destlen, char op, const char *src, -+ const char *fmt, const char *ifstring, -+ const char *elsestring, unsigned long data, -+ format_flag flags) ++compresshook_format_str (char *dest, size_t destlen, size_t col, char op, ++ const char *src, const char *fmt, ++ const char *ifstring, const char *elsestring, ++ unsigned long data, format_flag flags) +{ + char tmp[SHORT_STRING]; + @@ -216,8 +223,8 @@ The home page for this patch is: +static char *get_compression_cmd (const char* cmd, const CONTEXT* ctx) +{ + char expanded[_POSIX_PATH_MAX]; -+ mutt_FormatString (expanded, sizeof (expanded), cmd, compresshook_format_str, -+ (unsigned long) ctx, 0); ++ mutt_FormatString (expanded, sizeof (expanded), 0, cmd, ++ compresshook_format_str, (unsigned long) ctx, 0); + return safe_strdup (expanded); +} + @@ -243,7 +250,7 @@ The home page for this patch is: + COMPRESS_INFO *ci = set_compress_info (ctx); + if (!ci->open) { + ctx->magic = 0; -+ FREE (ctx->compressinfo); ++ FREE (&ctx->compressinfo); + return (-1); + } + if (!ci->close || access (ctx->path, W_OK) != 0) @@ -288,7 +295,7 @@ The home page for this patch is: + { + mutt_any_key_to_continue (NULL); + ctx->magic = 0; -+ FREE (ctx->compressinfo); ++ FREE (&ctx->compressinfo); + mutt_error (_("Error executing: %s : unable to open the mailbox!\n"), cmd); + } + FREE (&cmd); @@ -510,7 +517,7 @@ The home page for this patch is: + +#endif /* USE_COMPRESSED */ --- /dev/null -+++ compress.h ++++ b/compress.h @@ -0,0 +1,27 @@ +/* + * Copyright (C) 1997 Alain Penders @@ -539,9 +546,9 @@ The home page for this patch is: +int mutt_test_compress_command (const char *); +int mutt_check_mailbox_compressed (CONTEXT *); +void mutt_fast_close_compressed (CONTEXT *); ---- configure.in.orig -+++ configure.in -@@ -798,6 +798,11 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -792,6 +792,11 @@ AC_ARG_ENABLE(locales-fix, AC_HELP_STRIN AC_DEFINE(LOCALES_HACK,1,[ Define if the result of isprint() is unreliable. ]) fi]) @@ -553,9 +560,9 @@ The home page for this patch is: AC_ARG_WITH(exec-shell, AC_HELP_STRING([--with-exec-shell=SHELL], [Specify alternate shell (ONLY if /bin/sh is broken)]), [if test $withval != yes; then AC_DEFINE_UNQUOTED(EXECSHELL, "$withval", ---- curs_main.c.orig -+++ curs_main.c -@@ -1096,6 +1096,11 @@ +--- a/curs_main.c ++++ b/curs_main.c +@@ -1131,6 +1131,11 @@ int mutt_index_menu (void) { int check; @@ -567,11 +574,11 @@ The home page for this patch is: mutt_str_replace (&LastFolder, Context->path); oldcount = Context ? Context->msgcount : 0; ---- doc/manual.xml.head.orig -+++ doc/manual.xml.head -@@ -4749,6 +4749,205 @@ +--- a/doc/manual.xml.head ++++ b/doc/manual.xml.head +@@ -4676,6 +4676,205 @@ macro pager \cb |urlview\n - + + +Compressed folders Support (OPTIONAL) @@ -772,12 +779,12 @@ The home page for this patch is: + + + - - ---- doc/muttrc.man.head.orig -+++ doc/muttrc.man.head -@@ -316,6 +316,24 @@ + Mutt's MIME Support + +--- a/doc/muttrc.man.head ++++ b/doc/muttrc.man.head +@@ -345,6 +345,24 @@ specify the ID of the public key to be u to a certain recipient. The meaning of "key ID" is to be taken broadly: This can be a different e-mail address, a numerical key ID, or even just an arbitrary search string. @@ -802,8 +809,8 @@ The home page for this patch is: .TP \fBpush\fP \fIstring\fP This command adds the named \fIstring\fP to the keyboard buffer. ---- hook.c.orig -+++ hook.c +--- a/hook.c ++++ b/hook.c @@ -24,6 +24,10 @@ #include "mailbox.h" #include "mutt_crypt.h" @@ -815,7 +822,7 @@ The home page for this patch is: #include #include #include -@@ -92,6 +96,16 @@ +@@ -92,6 +96,16 @@ int mutt_parse_hook (BUFFER *buf, BUFFER memset (&pattern, 0, sizeof (pattern)); pattern.data = safe_strdup (path); } @@ -824,31 +831,31 @@ The home page for this patch is: + { + if (mutt_test_compress_command (command.data)) + { -+ strfcpy (err->data, _("bad formatted command string"), err->dsize); ++ strfcpy (err->data, _("badly formatted command string"), err->dsize); + return (-1); + } + } +#endif - else if (DefaultHook && !(data & (M_CHARSETHOOK | M_ACCOUNTHOOK)) + else if (DefaultHook && !(data & (M_CHARSETHOOK | M_ICONVHOOK | M_ACCOUNTHOOK)) && (!WithCrypto || !(data & M_CRYPTHOOK)) ) ---- init.h.orig -+++ init.h -@@ -3119,6 +3119,11 @@ +--- a/init.h ++++ b/init.h +@@ -3210,6 +3210,11 @@ struct command_t Commands[] = { + { "fcc-hook", mutt_parse_hook, M_FCCHOOK }, + { "fcc-save-hook", mutt_parse_hook, M_FCCHOOK | M_SAVEHOOK }, { "folder-hook", mutt_parse_hook, M_FOLDERHOOK }, - { "group", parse_group, 0 }, - { "ungroup", parse_ungroup, 0 }, +#ifdef USE_COMPRESSED + { "open-hook", mutt_parse_hook, M_OPENHOOK }, + { "close-hook", mutt_parse_hook, M_CLOSEHOOK }, + { "append-hook", mutt_parse_hook, M_APPENDHOOK }, +#endif + { "group", parse_group, 0 }, + { "ungroup", parse_ungroup, 0 }, { "hdr_order", parse_list, UL &HeaderOrderList }, - #ifdef HAVE_ICONV - { "iconv-hook", mutt_parse_hook, M_ICONVHOOK }, ---- main.c.orig -+++ main.c -@@ -398,6 +398,12 @@ +--- a/main.c ++++ b/main.c +@@ -409,6 +409,12 @@ static void show_version (void) #else "-LOCALES_HACK " #endif @@ -861,9 +868,9 @@ The home page for this patch is: #ifdef HAVE_WC_FUNCS "+HAVE_WC_FUNCS " ---- Makefile.am.orig -+++ Makefile.am -@@ -18,7 +18,7 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -18,7 +18,7 @@ BUILT_SOURCES = keymap_defs.h patchlist. bin_PROGRAMS = mutt @DOTLOCK_TARGET@ @PGPAUX_TARGET@ mutt_SOURCES = $(BUILT_SOURCES) \ addrbook.c alias.c attach.c base64.c browser.c buffy.c color.c \ @@ -872,8 +879,8 @@ The home page for this patch is: commands.c complete.c compose.c copy.c curs_lib.c curs_main.c date.c \ edit.c enter.c flags.c init.c filter.c from.c \ getdomain.c group.c \ -@@ -66,7 +66,7 @@ - crypt-gpgme.c crypt-mod-pgp-gpgme.c crypt-mod-smime-gpgme.c +@@ -66,7 +66,7 @@ EXTRA_mutt_SOURCES = account.c md5.c mut + utf8.c wcwidth.c EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP OPS.CRYPT OPS.SMIME TODO UPDATING \ - configure account.h \ @@ -881,11 +888,11 @@ The home page for this patch is: attach.h buffy.h charset.h copy.h crypthash.h dotlock.h functions.h gen_defs \ globals.h hash.h history.h init.h keymap.h mutt_crypt.h \ mailbox.h mapping.h md5.h mime.h mutt.h mutt_curses.h mutt_menu.h \ ---- mbox.c.orig -+++ mbox.c -@@ -28,6 +28,10 @@ - #include "sort.h" +--- a/mbox.c ++++ b/mbox.c +@@ -29,6 +29,10 @@ #include "copy.h" + #include "mutt_curses.h" +#ifdef USE_COMPRESSED +#include "compress.h" @@ -894,7 +901,7 @@ The home page for this patch is: #include #include #include -@@ -1014,6 +1018,12 @@ +@@ -1026,6 +1030,12 @@ bail: /* Come here in case of disaster int mbox_close_mailbox (CONTEXT *ctx) { mx_unlock_file (ctx->path, fileno (ctx->fp), 1); @@ -907,9 +914,9 @@ The home page for this patch is: mutt_unblock_signals (); mx_fastclose_mailbox (ctx); return 0; ---- mutt.h.orig -+++ mutt.h -@@ -157,6 +157,11 @@ +--- a/mutt.h ++++ b/mutt.h +@@ -160,6 +160,11 @@ typedef enum #define M_ACCOUNTHOOK (1<<9) #define M_REPLYHOOK (1<<10) #define M_SEND2HOOK (1<<11) @@ -921,9 +928,9 @@ The home page for this patch is: /* tree characters for linearize_tree and print_enriched_string */ #define M_TREE_LLCORNER 1 -@@ -864,6 +869,11 @@ - void *data; /* driver specific data */ - #endif /* USE_IMAP */ +@@ -892,6 +897,11 @@ typedef struct _context + int flagged; /* how many flagged messages */ + int msgnotreadyet; /* which msg "new" in pager, -1 if none */ +#ifdef USE_COMPRESSED + void *compressinfo; /* compressed mbox module private data */ @@ -932,9 +939,9 @@ The home page for this patch is: + short magic; /* mailbox type */ - unsigned int locked : 1; /* is the mailbox locked? */ ---- mx.c.orig -+++ mx.c + unsigned char rights[(RIGHTSMAX + 7)/8]; /* ACL bits */ +--- a/mx.c ++++ b/mx.c @@ -30,6 +30,10 @@ #include "keymap.h" #include "url.h" @@ -946,7 +953,7 @@ The home page for this patch is: #ifdef USE_IMAP #include "imap.h" #endif -@@ -454,6 +458,10 @@ +@@ -445,6 +449,10 @@ int mx_get_magic (const char *path) return (-1); } @@ -957,7 +964,7 @@ The home page for this patch is: return (magic); } -@@ -493,6 +501,13 @@ +@@ -484,6 +492,13 @@ static int mx_open_mailbox_append (CONTE { struct stat sb; @@ -971,7 +978,7 @@ The home page for this patch is: ctx->append = 1; #ifdef USE_IMAP -@@ -653,7 +668,12 @@ +@@ -647,7 +662,12 @@ CONTEXT *mx_open_mailbox (const char *pa } ctx->magic = mx_get_magic (path); @@ -985,7 +992,7 @@ The home page for this patch is: if(ctx->magic == 0) mutt_error (_("%s is not a mailbox."), path); -@@ -759,6 +779,10 @@ +@@ -748,6 +768,10 @@ void mx_fastclose_mailbox (CONTEXT *ctx) mutt_free_header (&ctx->hdrs[i]); FREE (&ctx->hdrs); FREE (&ctx->v2r); @@ -996,10 +1003,10 @@ The home page for this patch is: FREE (&ctx->path); FREE (&ctx->pattern); if (ctx->limit_pattern) -@@ -816,6 +840,12 @@ +@@ -800,6 +824,12 @@ static int sync_mailbox (CONTEXT *ctx, i + if (tmp && tmp->new == 0) mutt_update_mailbox (tmp); - #endif + +#ifdef USE_COMPRESSED + if (rc == 0 && ctx->compressinfo) @@ -1009,7 +1016,7 @@ The home page for this patch is: return rc; } -@@ -1017,6 +1047,11 @@ +@@ -1058,6 +1088,11 @@ int mx_close_mailbox (CONTEXT *ctx, int !mutt_is_spool(ctx->path) && !option (OPTSAVEEMPTY)) mx_unlink_empty (ctx->path); @@ -1021,7 +1028,7 @@ The home page for this patch is: mx_fastclose_mailbox (ctx); return 0; -@@ -1326,6 +1361,11 @@ +@@ -1373,6 +1408,11 @@ int mx_check_mailbox (CONTEXT *ctx, int { int rc; @@ -1033,9 +1040,9 @@ The home page for this patch is: if (ctx) { if (ctx->locked) lock = 0; ---- mx.h.orig -+++ mx.h -@@ -40,6 +40,9 @@ +--- a/mx.h ++++ b/mx.h +@@ -40,6 +40,9 @@ enum #ifdef USE_POP , M_POP #endif @@ -1045,15 +1052,9 @@ The home page for this patch is: }; WHERE short DefaultMagic INITVAL (M_MBOX); ---- PATCHES.orig -+++ PATCHES -@@ -1,2 +1,3 @@ -+patch-1.5.11.rr.compressed.1 - patch-1.5.6.tt.assumed_charset.1 - patch-1.5.6.dw.maildir-mtime.1 ---- po/de.po.orig -+++ po/de.po -@@ -1267,6 +1267,48 @@ +--- a/po/de.po ++++ b/po/de.po +@@ -1279,6 +1279,48 @@ msgstr "Prüfung des Absenders fehlgeschl msgid "Failed to figure out sender" msgstr "Kann Absender nicht ermitteln" @@ -1102,39 +1103,39 @@ The home page for this patch is: #: crypt.c:69 #, c-format msgid " (current time: %c)" -@@ -1915,6 +1957,10 @@ - msgid "Help for %s" - msgstr "Hilfe für %s" +@@ -1948,6 +1990,10 @@ msgstr "Hilfe für %s" + msgid "Bad history file format (line %d)" + msgstr "Falsches Format der Datei früherer Eingaben (Zeile %d)" +#: hook.c:96 -+msgid "bad formatted command string" ++msgid "badly formatted command string" +msgstr "Hook enthält nicht die Muster %f und %t" + - #: hook.c:246 + #: hook.c:251 #, c-format msgid "unhook: Can't do unhook * from within a hook." -@@ -3422,18 +3468,10 @@ +@@ -3463,18 +3509,10 @@ msgstr "Lese %s..." msgid "Mailbox is corrupt!" msgstr "Mailbox fehlerhaft!" --#: mbox.c:662 +-#: mbox.c:670 -msgid "Mailbox was corrupted!" -msgstr "Mailbox wurde zerstört!" - - #: mbox.c:701 mbox.c:952 + #: mbox.c:711 mbox.c:964 msgid "Fatal error! Could not reopen mailbox!" msgstr "Fataler Fehler, konnte Mailbox nicht erneut öffnen!" --#: mbox.c:710 +-#: mbox.c:720 -msgid "Unable to lock mailbox!" -msgstr "Kann Mailbox nicht für exklusiven Zugriff sperren!" - #. this means ctx->changed or ctx->deleted was set, but no #. * messages were found to be changed or deleted. This should #. * never happen, is we presume it is a bug in mutt. ---- po/POTFILES.in.orig -+++ po/POTFILES.in -@@ -8,6 +8,7 @@ +--- a/po/POTFILES.in ++++ b/po/POTFILES.in +@@ -8,6 +8,7 @@ charset.c color.c commands.c compose.c @@ -1142,9 +1143,9 @@ The home page for this patch is: crypt-gpgme.c crypt.c cryptglue.c ---- status.c.orig -+++ status.c -@@ -97,6 +97,14 @@ +--- a/status.c ++++ b/status.c +@@ -99,6 +99,14 @@ status_format_str (char *buf, size_t buf case 'f': snprintf (fmt, sizeof(fmt), "%%%ss", prefix);