X-Git-Url: https://git.llucax.com/software/mutt-debian.git/blobdiff_plain/ce1ba79962bf3591769c910ba8bbb383405c86ab..fbd7bb6b26c5b100362431ff4197fe11a4cd761e:/debian/patches/features/compressed-folders diff --git a/debian/patches/features/compressed-folders b/debian/patches/features/compressed-folders index 4605c43..16baf3c 100644 --- a/debian/patches/features/compressed-folders +++ b/debian/patches/features/compressed-folders @@ -12,11 +12,15 @@ The home page for this patch is: * Changes made: - 2008-05-20 myon: refreshed to remove hunks in auto* files + - 2009-09-15 myon: refreshed for mutt-1.5.19 + status.c:103: add sizeof (tmp) to mutt_pretty_mailbox + - 2009-09-15 scotton: removed doc/Muttrc for mutt-1.5.19 (only patch doc/Muttrc.head) + - 2009-09-11 antonio: removed DefaultMagic, see 541360 == END PATCH --- /dev/null +++ b/compress.c -@@ -0,0 +1,499 @@ +@@ -0,0 +1,496 @@ +/* + * Copyright (C) 1997 Alain Penders + * @@ -223,7 +227,7 @@ 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), 0, cmd, ++ mutt_FormatString (expanded, sizeof (expanded), 0, cmd, + compresshook_format_str, (unsigned long) ctx, 0); + return safe_strdup (expanded); +} @@ -340,10 +344,7 @@ The home page for this patch is: + + set_path (ctx); + -+ ctx->magic = DefaultMagic; -+ + if (!is_new (ctx->realpath)) -+ if (ctx->magic == M_MBOX || ctx->magic == M_MMDF) + if ((fh = fopen (ctx->path, "w"))) + fclose (fh); + /* No error checking - the parent function will catch it */ @@ -363,8 +364,8 @@ The home page for this patch is: + fclose (ctx->fp); + ctx->fp = NULL; + /* if the folder was removed, remove the gzipped folder too */ -+ if ((ctx->magic > 0) -+ && (access (ctx->path, F_OK) != 0) ++ if ((ctx->magic > 0) ++ && (access (ctx->path, F_OK) != 0) + && ! option (OPTSAVEEMPTY)) + remove (ctx->realpath); + else @@ -443,7 +444,7 @@ The home page for this patch is: + if (! (ctx->append + && ((append = get_append_command (ctx->realpath, ctx)) + || (append = ci->close)))) -+ { ++ { + /* if we can not or should not append, we only have to remove the */ + /* compressed info, because sync was already called */ + mutt_fast_close_compressed (ctx); @@ -548,7 +549,7 @@ The home page for this patch is: +void mutt_fast_close_compressed (CONTEXT *); --- a/configure.ac +++ b/configure.ac -@@ -787,6 +787,11 @@ AC_ARG_ENABLE(locales-fix, AC_HELP_STRIN +@@ -805,6 +805,11 @@ AC_DEFINE(LOCALES_HACK,1,[ Define if the result of isprint() is unreliable. ]) fi]) @@ -562,7 +563,7 @@ The home page for this patch is: AC_DEFINE_UNQUOTED(EXECSHELL, "$withval", --- a/curs_main.c +++ b/curs_main.c -@@ -1132,6 +1132,11 @@ int mutt_index_menu (void) +@@ -1135,6 +1135,11 @@ { int check; @@ -576,7 +577,7 @@ The home page for this patch is: --- a/doc/manual.xml.head +++ b/doc/manual.xml.head -@@ -4799,6 +4799,205 @@ macro pager \cb |urlview\n +@@ -5678,6 +5678,205 @@ @@ -609,9 +610,9 @@ The home page for this patch is: +For example: + + -+open-hook \\.gz$ "gzip -cd %f > %t" ++open-hook \\.gz$ "gzip -cd %f > %t" +close-hook \\.gz$ "gzip -c %t > %f" -+append-hook \\.gz$ "gzip -c %t >> %f" ++append-hook \\.gz$ "gzip -c %t >> %f" + + +You do not have to specify all of the commands. If you omit -+open-hook \\.gz$ "gzip -cd %f > %t" ++open-hook \\.gz$ "gzip -cd %f > %t" + + +If the command is empty, this operation is @@ -725,7 +726,7 @@ The home page for this patch is: +Example: + + -+append-hook \\.gz$ "gzip -c %t >> %f" ++append-hook \\.gz$ "gzip -c %t >> %f" + + +When append-hook is used, the folder @@ -782,23 +783,9 @@ The home page for this patch is: Mutt's MIME Support ---- a/doc/Muttrc -+++ b/doc/Muttrc -@@ -24,6 +24,11 @@ macro generic,pager " - macro index,pager y "?" "show incoming mailboxes list" - bind browser y exit - -+# Use folders which match on \\.gz$ as gzipped folders: -+# open-hook \\.gz$ "gzip -cd %f > %t" -+# close-hook \\.gz$ "gzip -c %t > %f" -+# append-hook \\.gz$ "gzip -c %t >> %f" -+ - # If Mutt is unable to determine your site's domain name correctly, you can - # set the default here. - # --- a/doc/Muttrc.head +++ b/doc/Muttrc.head -@@ -24,6 +24,11 @@ macro generic,pager " +@@ -29,6 +29,11 @@ macro index,pager y "?" "show incoming mailboxes list" bind browser y exit @@ -812,7 +799,7 @@ The home page for this patch is: # --- a/doc/muttrc.man.head +++ b/doc/muttrc.man.head -@@ -345,6 +345,24 @@ specify the ID of the public key to be u +@@ -345,6 +345,24 @@ 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. @@ -828,7 +815,7 @@ The home page for this patch is: +"\fI\\\\.gz$\fP"). The commands tell Mutt how to uncompress a folder +(\fBopen-hook\fP), compress a folder (\fBclose-hook\fP) or append a +compressed mail to a compressed folder (\fBappend-hook\fP). The -+\fIcommand\fP string is the ++\fIcommand\fP string is the +.BR printf (3) +like format string, and it should accept two parameters: \fB%f\fP, +which is replaced with the (compressed) folder name, and \fB%t\fP @@ -850,7 +837,7 @@ The home page for this patch is: #include #include #include -@@ -92,6 +96,16 @@ int mutt_parse_hook (BUFFER *buf, BUFFER +@@ -92,6 +96,16 @@ memset (&pattern, 0, sizeof (pattern)); pattern.data = safe_strdup (path); } @@ -869,7 +856,7 @@ The home page for this patch is: ) --- a/init.h +++ b/init.h -@@ -3272,6 +3272,11 @@ struct command_t Commands[] = { +@@ -3504,6 +3504,11 @@ { "fcc-hook", mutt_parse_hook, M_FCCHOOK }, { "fcc-save-hook", mutt_parse_hook, M_FCCHOOK | M_SAVEHOOK }, { "folder-hook", mutt_parse_hook, M_FOLDERHOOK }, @@ -883,7 +870,7 @@ The home page for this patch is: { "hdr_order", parse_list, UL &HeaderOrderList }, --- a/main.c +++ b/main.c -@@ -403,6 +403,12 @@ static void show_version (void) +@@ -402,6 +402,12 @@ #else "-LOCALES_HACK " #endif @@ -898,7 +885,7 @@ The home page for this patch is: "+HAVE_WC_FUNCS " --- a/Makefile.am +++ b/Makefile.am -@@ -18,7 +18,7 @@ BUILT_SOURCES = keymap_defs.h patchlist. +@@ -18,7 +18,7 @@ bin_PROGRAMS = mutt @DOTLOCK_TARGET@ @PGPAUX_TARGET@ mutt_SOURCES = \ addrbook.c alias.c attach.c base64.c browser.c buffy.c color.c \ @@ -907,8 +894,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 \ -@@ -57,7 +57,7 @@ EXTRA_mutt_SOURCES = account.c md5.c mut - utf8.c wcwidth.c +@@ -57,7 +57,7 @@ + bcache.h browser.h hcache.h mbyte.h mutt_idna.h remailer.h url.h EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP OPS.CRYPT OPS.SMIME TODO UPDATING \ - configure account.h \ @@ -929,7 +916,7 @@ The home page for this patch is: #include #include #include -@@ -1037,6 +1041,12 @@ bail: /* Come here in case of disaster +@@ -1048,6 +1052,12 @@ int mbox_close_mailbox (CONTEXT *ctx) { mx_unlock_file (ctx->path, fileno (ctx->fp), 1); @@ -944,7 +931,7 @@ The home page for this patch is: return 0; --- a/mutt.h +++ b/mutt.h -@@ -160,6 +160,11 @@ typedef enum +@@ -146,6 +146,11 @@ #define M_ACCOUNTHOOK (1<<9) #define M_REPLYHOOK (1<<10) #define M_SEND2HOOK (1<<11) @@ -956,7 +943,7 @@ The home page for this patch is: /* tree characters for linearize_tree and print_enriched_string */ #define M_TREE_LLCORNER 1 -@@ -892,6 +897,11 @@ typedef struct _context +@@ -882,6 +887,11 @@ int flagged; /* how many flagged messages */ int msgnotreadyet; /* which msg "new" in pager, -1 if none */ @@ -981,7 +968,7 @@ The home page for this patch is: #ifdef USE_IMAP #include "imap.h" #endif -@@ -445,6 +449,10 @@ int mx_get_magic (const char *path) +@@ -415,6 +419,10 @@ return (-1); } @@ -992,7 +979,7 @@ The home page for this patch is: return (magic); } -@@ -484,6 +492,13 @@ static int mx_open_mailbox_append (CONTE +@@ -454,6 +462,13 @@ { struct stat sb; @@ -1006,7 +993,7 @@ The home page for this patch is: ctx->append = 1; #ifdef USE_IMAP -@@ -647,7 +662,12 @@ CONTEXT *mx_open_mailbox (const char *pa +@@ -617,7 +632,12 @@ } ctx->magic = mx_get_magic (path); @@ -1020,7 +1007,7 @@ The home page for this patch is: if(ctx->magic == 0) mutt_error (_("%s is not a mailbox."), path); -@@ -748,6 +768,10 @@ void mx_fastclose_mailbox (CONTEXT *ctx) +@@ -718,6 +738,10 @@ mutt_free_header (&ctx->hdrs[i]); FREE (&ctx->hdrs); FREE (&ctx->v2r); @@ -1031,7 +1018,7 @@ The home page for this patch is: FREE (&ctx->path); FREE (&ctx->pattern); if (ctx->limit_pattern) -@@ -800,6 +824,12 @@ static int sync_mailbox (CONTEXT *ctx, i +@@ -770,6 +794,12 @@ if (tmp && tmp->new == 0) mutt_update_mailbox (tmp); @@ -1044,7 +1031,7 @@ The home page for this patch is: return rc; } -@@ -1058,6 +1088,11 @@ int mx_close_mailbox (CONTEXT *ctx, int +@@ -1033,6 +1063,11 @@ !mutt_is_spool(ctx->path) && !option (OPTSAVEEMPTY)) mx_unlink_empty (ctx->path); @@ -1056,7 +1043,7 @@ The home page for this patch is: mx_fastclose_mailbox (ctx); return 0; -@@ -1373,6 +1408,11 @@ int mx_check_mailbox (CONTEXT *ctx, int +@@ -1355,6 +1390,11 @@ { int rc; @@ -1070,7 +1057,7 @@ The home page for this patch is: if (ctx->locked) lock = 0; --- a/mx.h +++ b/mx.h -@@ -40,6 +40,9 @@ enum +@@ -40,6 +40,9 @@ #ifdef USE_POP , M_POP #endif @@ -1082,28 +1069,49 @@ The home page for this patch is: WHERE short DefaultMagic INITVAL (M_MBOX); --- a/po/de.po +++ b/po/de.po -@@ -1289,6 +1289,48 @@ msgstr "Prüfung des Absenders fehlgeschl - msgid "Failed to figure out sender" - msgstr "Kann Absender nicht ermitteln" +@@ -2005,6 +2005,10 @@ + msgid "Bad history file format (line %d)" + msgstr "Falsches Format der Datei früherer Eingaben (Zeile %d)" + ++#: hook.c:96 ++msgid "badly formatted command string" ++msgstr "Hook enthält nicht die Muster %f und %t" ++ + #: hook.c:251 + #, c-format + msgid "unhook: Can't do unhook * from within a hook." +@@ -2766,7 +2770,7 @@ + msgid "Mailbox is corrupt!" + msgstr "Mailbox fehlerhaft!" + +-#: mbox.c:678 ++#: mbox.c:678 compress.c:203 mbox.c:661 + msgid "Mailbox was corrupted!" + msgstr "Mailbox wurde zerstört!" + +@@ -2774,10 +2778,11 @@ + msgid "Fatal error! Could not reopen mailbox!" + msgstr "Fataler Fehler, konnte Mailbox nicht erneut öffnen!" + +-#: mbox.c:746 ++#: mbox.c:746 compress.c:264 compress.c:246 compress.c:367 compress.c:443 mbox.c:706 + msgid "Unable to lock mailbox!" + msgstr "Kann Mailbox nicht für exklusiven Zugriff sperren!" -+#: compress.c:203 mbox.c:661 -+msgid "Mailbox was corrupted!" -+msgstr "Mailbox wurde zerstört!" ++ + #. 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. +@@ -5378,3 +5383,32 @@ + + #~ msgid "Authentication method is unknown." + #~ msgstr "Authentifizierungsmethode unbekannt." + +#: compress.c:228 compress.c:253 +#, c-format +msgid "Decompressing %s...\n" +msgstr "Entpacke %s...\n" + -+#: compress.c:246 compress.c:367 compress.c:443 mbox.c:706 -+msgid "Unable to lock mailbox!" -+msgstr "Kann Mailbox nicht für exklusiven Zugriff sperren!" -+ -+#: compress.c:264 -+#, c-format -+msgid "Error executing: %s : unable to open the mailbox!\n" -+msgstr "Fehler beim Ausführen von %s : Kann die Mailbox nicht öffnen!\n" -+ +#: compress.c:350 compress.c:377 compress.c:423 compress.c:454 +#, c-format +msgid "Compressing %s...\n" @@ -1127,43 +1135,9 @@ The home page for this patch is: +#, c-format +msgid " %s: Error compressing mailbox! Uncompressed one kept!\n" +msgstr " %s: Fehler beim packen der Mailbox! Entpackte Mailbox gespeichert!\n" -+ - #: crypt.c:69 - #, c-format - msgid " (current time: %c)" -@@ -1958,6 +2000,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 "badly formatted command string" -+msgstr "Hook enthält nicht die Muster %f und %t" -+ - #: hook.c:251 - #, c-format - msgid "unhook: Can't do unhook * from within a hook." -@@ -2687,18 +2733,10 @@ msgstr "Lese %s..." - msgid "Mailbox is corrupt!" - msgstr "Mailbox fehlerhaft!" - --#: mbox.c:678 --msgid "Mailbox was corrupted!" --msgstr "Mailbox wurde zerstört!" -- - #: mbox.c:719 mbox.c:975 - msgid "Fatal error! Could not reopen mailbox!" - msgstr "Fataler Fehler, konnte Mailbox nicht erneut öffnen!" - --#: mbox.c:728 --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. --- a/po/POTFILES.in +++ b/po/POTFILES.in -@@ -8,6 +8,7 @@ charset.c +@@ -8,6 +8,7 @@ color.c commands.c compose.c @@ -1173,7 +1147,7 @@ The home page for this patch is: cryptglue.c --- a/status.c +++ b/status.c -@@ -96,6 +96,14 @@ status_format_str (char *buf, size_t buf +@@ -96,6 +96,14 @@ case 'f': snprintf (fmt, sizeof(fmt), "%%%ss", prefix); @@ -1181,7 +1155,7 @@ The home page for this patch is: + if (Context && Context->compressinfo && Context->realpath) + { + strfcpy (tmp, Context->realpath, sizeof (tmp)); -+ mutt_pretty_mailbox (tmp); ++ mutt_pretty_mailbox (tmp, sizeof (tmp)); + } + else +#endif