]> git.llucax.com Git - software/mutt-debian.git/blobdiff - debian/patches/features/compressed-folders
note fixing of #447340
[software/mutt-debian.git] / debian / patches / features / compressed-folders
index 45e3922a82bfd3fba9efecf8bc2930f33e2d16c9..304d03252bbfca2df1f5b28d74ba8d4cc6c38934 100644 (file)
@@ -7,20 +7,16 @@ The home page for this patch is:
   http://www.spinnaker.de/mutt/compressed/
 
 * Patch last synced with upstream:
   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:
 
 * 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
+  - 2007-06-14 myon: remove hunks for Muttrc*
 
 == END PATCH
 
 == END PATCH
-diff -urN mutt-1.5.11/compress.c mutt-1.5.11-ro/compress.c
---- mutt-1.5.11/compress.c     1970-01-01 01:00:00.000000000 +0100
-+++ mutt-1.5.11-ro/compress.c  2005-09-27 13:26:58.000000000 +0200
-@@ -0,0 +1,487 @@
+--- /dev/null
++++ b/compress.c
+@@ -0,0 +1,499 @@
 +/*
 + * Copyright (C) 1997 Alain Penders <Alain@Finale-Dev.com>
 + *
 +/*
 + * Copyright (C) 1997 Alain Penders <Alain@Finale-Dev.com>
 + *
@@ -127,7 +123,19 @@ diff -urN mutt-1.5.11/compress.c mutt-1.5.11-ro/compress.c
 +  int magic;
 +
 +  if (is_new (path))
 +  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);
 +
 +
 +  magic = mx_get_magic (path);
 +
@@ -181,10 +189,10 @@ diff -urN mutt-1.5.11/compress.c mutt-1.5.11-ro/compress.c
 +}
 +
 +static const char *
 +}
 +
 +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];
 +
 +{
 +  char tmp[SHORT_STRING];
 +
@@ -215,8 +223,8 @@ diff -urN mutt-1.5.11/compress.c mutt-1.5.11-ro/compress.c
 +static char *get_compression_cmd (const char* cmd, const CONTEXT* ctx)
 +{
 +  char expanded[_POSIX_PATH_MAX];
 +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);
 +}
 +
 +  return safe_strdup (expanded);
 +}
 +
@@ -242,7 +250,7 @@ diff -urN mutt-1.5.11/compress.c mutt-1.5.11-ro/compress.c
 +  COMPRESS_INFO *ci = set_compress_info (ctx);
 +  if (!ci->open) {
 +    ctx->magic = 0;
 +  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)
 +    return (-1);
 +  }
 +  if (!ci->close || access (ctx->path, W_OK) != 0)
@@ -287,7 +295,7 @@ diff -urN mutt-1.5.11/compress.c mutt-1.5.11-ro/compress.c
 +  {
 +    mutt_any_key_to_continue (NULL);
 +    ctx->magic = 0;
 +  {
 +    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);
 +    mutt_error (_("Error executing: %s : unable to open the mailbox!\n"), cmd);
 +  }
 +  FREE (&cmd);
@@ -508,9 +516,8 @@ diff -urN mutt-1.5.11/compress.c mutt-1.5.11-ro/compress.c
 +}
 +
 +#endif /* USE_COMPRESSED */
 +}
 +
 +#endif /* USE_COMPRESSED */
-diff -urN mutt-1.5.11/compress.h mutt-1.5.11-ro/compress.h
---- mutt-1.5.11/compress.h     1970-01-01 01:00:00.000000000 +0100
-+++ mutt-1.5.11-ro/compress.h  2005-09-27 13:26:58.000000000 +0200
+--- /dev/null
++++ b/compress.h
 @@ -0,0 +1,27 @@
 +/*
 + * Copyright (C) 1997 Alain Penders <Alain@Finale-Dev.com>
 @@ -0,0 +1,27 @@
 +/*
 + * Copyright (C) 1997 Alain Penders <Alain@Finale-Dev.com>
@@ -539,12 +546,9 @@ diff -urN mutt-1.5.11/compress.h mutt-1.5.11-ro/compress.h
 +int mutt_test_compress_command (const char *);
 +int mutt_check_mailbox_compressed (CONTEXT *);
 +void mutt_fast_close_compressed (CONTEXT *);
 +int mutt_test_compress_command (const char *);
 +int mutt_check_mailbox_compressed (CONTEXT *);
 +void mutt_fast_close_compressed (CONTEXT *);
-diff -urN mutt-1.5.11/config.h.in mutt-1.5.11-ro/config.h.in
-diff -urN mutt-1.5.11/configure mutt-1.5.11-ro/configure
-diff -urN mutt-1.5.11/configure.in mutt-1.5.11-ro/configure.in
---- mutt-1.5.11/configure.in   2005-09-15 16:21:24.000000000 +0200
-+++ mutt-1.5.11-ro/configure.in        2005-09-27 13:26:58.000000000 +0200
-@@ -711,6 +711,11 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -791,6 +791,11 @@ AC_ARG_ENABLE(locales-fix, AC_HELP_STRIN
                  AC_DEFINE(LOCALES_HACK,1,[ Define if the result of isprint() is unreliable. ])
          fi])
  
                  AC_DEFINE(LOCALES_HACK,1,[ Define if the result of isprint() is unreliable. ])
          fi])
  
@@ -556,10 +560,9 @@ diff -urN mutt-1.5.11/configure.in mutt-1.5.11-ro/configure.in
  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",
  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",
-diff -urN mutt-1.5.11/curs_main.c mutt-1.5.11-ro/curs_main.c
---- mutt-1.5.11/curs_main.c    2005-09-07 10:19:43.000000000 +0200
-+++ mutt-1.5.11-ro/curs_main.c 2005-09-27 13:26:58.000000000 +0200
-@@ -1091,6 +1091,11 @@
+--- a/curs_main.c
++++ b/curs_main.c
+@@ -1131,6 +1131,11 @@ int mutt_index_menu (void)
          {
          int check;
  
          {
          int check;
  
@@ -571,14 +574,13 @@ diff -urN mutt-1.5.11/curs_main.c mutt-1.5.11-ro/curs_main.c
          mutt_str_replace (&LastFolder, Context->path);
          oldcount = Context ? Context->msgcount : 0;
  
          mutt_str_replace (&LastFolder, Context->path);
          oldcount = Context ? Context->msgcount : 0;
  
-diff -urN mutt-1.5.11/doc/manual.xml.head mutt-1.5.11-ro/doc/manual.xml.head
---- mutt-1.5.11/doc/manual.xml.head    2005-09-06 18:46:44.000000000 +0200
-+++ mutt-1.5.11-ro/doc/manual.xml.head 2005-09-27 13:29:11.000000000 +0200
-@@ -4404,6 +4404,205 @@
+--- a/doc/manual.xml.head
++++ b/doc/manual.xml.head
+@@ -5010,6 +5010,205 @@ becomes an issue as mutt will silently f
  
  
- </sect1>
+ </chapter>
  
  
-+<sect2 id="compressedfolders">
++<sect1 id="compressedfolders">
 +<title>Compressed folders Support (OPTIONAL)</title>
 +
 +<para>
 +<title>Compressed folders Support (OPTIONAL)</title>
 +
 +<para>
@@ -630,7 +632,7 @@ diff -urN mutt-1.5.11/doc/manual.xml.head mutt-1.5.11-ro/doc/manual.xml.head
 +the compressed file will be removed if you delete all of the messages.
 +</para>
 +
 +the compressed file will be removed if you delete all of the messages.
 +</para>
 +
-+<sect3 id="open-hook">
++<sect2 id="open-hook">
 +<title>Open a compressed mailbox for reading</title>
 +
 +<para>
 +<title>Open a compressed mailbox for reading</title>
 +
 +<para>
@@ -663,9 +665,9 @@ diff -urN mutt-1.5.11/doc/manual.xml.head mutt-1.5.11-ro/doc/manual.xml.head
 +If the <emphasis>command</emphasis> is empty, this operation is
 +disabled for this file type.
 +</para>
 +If the <emphasis>command</emphasis> is empty, this operation is
 +disabled for this file type.
 +</para>
-+</sect3>
++</sect2>
 +
 +
-+<sect3 id="close-hook">
++<sect2 id="close-hook">
 +<title>Write a compressed mailbox</title>
 +
 +<para>
 +<title>Write a compressed mailbox</title>
 +
 +<para>
@@ -700,9 +702,9 @@ diff -urN mutt-1.5.11/doc/manual.xml.head mutt-1.5.11-ro/doc/manual.xml.head
 +<link linkend="close-hook">close-hook</link> is not called when you
 +exit from the folder if the folder was not changed.
 +</para>
 +<link linkend="close-hook">close-hook</link> is not called when you
 +exit from the folder if the folder was not changed.
 +</para>
-+</sect3>
++</sect2>
 +
 +
-+<sect3 id="append-hook">
++<sect2 id="append-hook">
 +<title>Append a message to a compressed mailbox</title>
 +
 +<para>
 +<title>Append a message to a compressed mailbox</title>
 +
 +<para>
@@ -744,9 +746,9 @@ diff -urN mutt-1.5.11/doc/manual.xml.head mutt-1.5.11-ro/doc/manual.xml.head
 +<link linkend="close-hook">close-hook</link>respectively) each time you
 +will add to it.
 +</para>
 +<link linkend="close-hook">close-hook</link>respectively) each time you
 +will add to it.
 +</para>
-+</sect3>
++</sect2>
 +
 +
-+<sect3>
++<sect2>
 +<title>Encrypted folders</title>
 +
 +<para>
 +<title>Encrypted folders</title>
 +
 +<para>
@@ -774,16 +776,15 @@ diff -urN mutt-1.5.11/doc/manual.xml.head mutt-1.5.11-ro/doc/manual.xml.head
 +decrypted in the /tmp directory, where it can be read by your system
 +administrator. So think about the security aspects of this.
 +</para>
 +decrypted in the /tmp directory, where it can be read by your system
 +administrator. So think about the security aspects of this.
 +</para>
-+</sect3>
 +</sect2>
 +</sect2>
++</sect1>
 +
 +
- <sect1 id="mimesupport">
+ <chapter id="mimesupport">
  <title>Mutt's MIME Support</title>
  
  <title>Mutt's MIME Support</title>
  
-diff -urN mutt-1.5.11/doc/muttrc.man.head mutt-1.5.11-ro/doc/muttrc.man.head
---- mutt-1.5.11/doc/muttrc.man.head    2005-09-07 10:19:44.000000000 +0200
-+++ mutt-1.5.11-ro/doc/muttrc.man.head 2005-09-27 13:29:53.000000000 +0200
-@@ -316,6 +316,24 @@
+--- 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.
  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.
@@ -808,9 +809,8 @@ diff -urN mutt-1.5.11/doc/muttrc.man.head mutt-1.5.11-ro/doc/muttrc.man.head
  .TP
  \fBpush\fP \fIstring\fP
  This command adds the named \fIstring\fP to the keyboard buffer.
  .TP
  \fBpush\fP \fIstring\fP
  This command adds the named \fIstring\fP to the keyboard buffer.
-diff -urN mutt-1.5.11/hook.c mutt-1.5.11-ro/hook.c
---- mutt-1.5.11/hook.c 2005-02-03 19:47:52.000000000 +0100
-+++ mutt-1.5.11-ro/hook.c      2005-09-27 13:27:02.000000000 +0200
+--- a/hook.c
++++ b/hook.c
 @@ -24,6 +24,10 @@
  #include "mailbox.h"
  #include "mutt_crypt.h"
 @@ -24,6 +24,10 @@
  #include "mailbox.h"
  #include "mutt_crypt.h"
@@ -822,7 +822,7 @@ diff -urN mutt-1.5.11/hook.c mutt-1.5.11-ro/hook.c
  #include <limits.h>
  #include <string.h>
  #include <stdlib.h>
  #include <limits.h>
  #include <string.h>
  #include <stdlib.h>
-@@ -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);
    }
      memset (&pattern, 0, sizeof (pattern));
      pattern.data = safe_strdup (path);
    }
@@ -831,33 +831,31 @@ diff -urN mutt-1.5.11/hook.c mutt-1.5.11-ro/hook.c
 +  {
 +    if (mutt_test_compress_command (command.data))
 +    {
 +  {
 +    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
 +      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))
        )
             && (!WithCrypto || !(data & M_CRYPTHOOK))
        )
-diff -urN mutt-1.5.11/init.h mutt-1.5.11-ro/init.h
---- mutt-1.5.11/init.h 2005-09-15 16:19:54.000000000 +0200
-+++ mutt-1.5.11-ro/init.h      2005-09-27 13:27:02.000000000 +0200
-@@ -3100,6 +3100,11 @@
+--- a/init.h
++++ b/init.h
+@@ -3193,6 +3193,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 },
    { "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
 +#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 },
    { "hdr_order",      parse_list,             UL &HeaderOrderList },
- #ifdef HAVE_ICONV
-   { "iconv-hook",     mutt_parse_hook,        M_ICONVHOOK }, 
-diff -urN mutt-1.5.11/main.c mutt-1.5.11-ro/main.c
---- mutt-1.5.11/main.c 2005-09-07 10:19:43.000000000 +0200
-+++ mutt-1.5.11-ro/main.c      2005-09-27 13:27:02.000000000 +0200
-@@ -385,6 +385,12 @@
+--- a/main.c
++++ b/main.c
+@@ -401,6 +401,12 @@ static void show_version (void)
  #else
        "-LOCALES_HACK  "
  #endif
  #else
        "-LOCALES_HACK  "
  #endif
@@ -870,34 +868,31 @@ diff -urN mutt-1.5.11/main.c mutt-1.5.11-ro/main.c
              
  #ifdef HAVE_WC_FUNCS
        "+HAVE_WC_FUNCS  "
              
  #ifdef HAVE_WC_FUNCS
        "+HAVE_WC_FUNCS  "
-diff -urN mutt-1.5.11/Makefile.am mutt-1.5.11-ro/Makefile.am
---- mutt-1.5.11/Makefile.am    2005-08-11 23:27:28.000000000 +0200
-+++ mutt-1.5.11-ro/Makefile.am 2005-09-27 13:27:02.000000000 +0200
-@@ -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 \
  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 \
--        crypt.c cryptglue.c \
-+        crypt.c cryptglue.c compress.c \
+-      crypt.c cryptglue.c \
++      crypt.c cryptglue.c compress.c \
        commands.c complete.c compose.c copy.c curs_lib.c curs_main.c date.c \
        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 \
-       handler.c hash.c hdrline.c headers.c help.c hook.c keymap.c \
-@@ -67,7 +67,7 @@
-       crypt-gpgme.c crypt-mod-pgp-gpgme.c crypt-mod-smime-gpgme.c
+       edit.c enter.c flags.c init.c filter.c from.c \
+       getdomain.c group.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 \
+ EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP OPS.CRYPT OPS.SMIME TODO UPDATING \
 -      configure account.h \
 +      configure account.h compress.h \
        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 \
 -      configure account.h \
 +      configure account.h compress.h \
        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 \
-diff -urN mutt-1.5.11/Makefile.in mutt-1.5.11-ro/Makefile.in
-diff -urN mutt-1.5.11/mbox.c mutt-1.5.11-ro/mbox.c
---- mutt-1.5.11/mbox.c 2005-08-02 09:08:00.000000000 +0200
-+++ mutt-1.5.11-ro/mbox.c      2005-09-27 13:27:02.000000000 +0200
-@@ -28,6 +28,10 @@
- #include "sort.h"
+--- a/mbox.c
++++ b/mbox.c
+@@ -29,6 +29,10 @@
  #include "copy.h"
  #include "copy.h"
+ #include "mutt_curses.h"
  
 +#ifdef USE_COMPRESSED
 +#include "compress.h"
  
 +#ifdef USE_COMPRESSED
 +#include "compress.h"
@@ -906,7 +901,7 @@ diff -urN mutt-1.5.11/mbox.c mutt-1.5.11-ro/mbox.c
  #include <sys/stat.h>
  #include <dirent.h>
  #include <string.h>
  #include <sys/stat.h>
  #include <dirent.h>
  #include <string.h>
-@@ -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);
  int mbox_close_mailbox (CONTEXT *ctx)
  {
    mx_unlock_file (ctx->path, fileno (ctx->fp), 1);
@@ -919,10 +914,9 @@ diff -urN mutt-1.5.11/mbox.c mutt-1.5.11-ro/mbox.c
    mutt_unblock_signals ();
    mx_fastclose_mailbox (ctx);
    return 0;
    mutt_unblock_signals ();
    mx_fastclose_mailbox (ctx);
    return 0;
-diff -urN mutt-1.5.11/mutt.h mutt-1.5.11-ro/mutt.h
---- mutt-1.5.11/mutt.h 2005-09-07 10:19:43.000000000 +0200
-+++ mutt-1.5.11-ro/mutt.h      2005-09-27 13:27:02.000000000 +0200
-@@ -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)
  #define M_ACCOUNTHOOK (1<<9)
  #define M_REPLYHOOK   (1<<10)
  #define M_SEND2HOOK     (1<<11)
@@ -934,9 +928,9 @@ diff -urN mutt-1.5.11/mutt.h mutt-1.5.11-ro/mutt.h
  
  /* tree characters for linearize_tree and print_enriched_string */
  #define M_TREE_LLCORNER               1
  
  /* tree characters for linearize_tree and print_enriched_string */
  #define M_TREE_LLCORNER               1
-@@ -828,6 +833,11 @@
-   void *data;                 /* driver specific data */
#endif /* USE_IMAP */
+@@ -891,6 +896,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 */
  
 +#ifdef USE_COMPRESSED
 +  void *compressinfo;         /* compressed mbox module private data */
@@ -945,13 +939,9 @@ diff -urN mutt-1.5.11/mutt.h mutt-1.5.11-ro/mutt.h
 +
    short magic;                        /* mailbox type */
  
 +
    short magic;                        /* mailbox type */
  
-   unsigned int locked : 1;    /* is the mailbox locked? */
-diff -urN mutt-1.5.11/Muttrc mutt-1.5.11-ro/Muttrc
-diff -urN mutt-1.5.11/Muttrc.head mutt-1.5.11-ro/Muttrc.head
-diff -urN mutt-1.5.11/Muttrc.head.in mutt-1.5.11-ro/Muttrc.head.in
-diff -urN mutt-1.5.11/mx.c mutt-1.5.11-ro/mx.c
---- mutt-1.5.11/mx.c   2005-09-07 10:19:43.000000000 +0200
-+++ mutt-1.5.11-ro/mx.c        2005-09-27 13:27:02.000000000 +0200
+   unsigned char rights[(RIGHTSMAX + 7)/8];    /* ACL bits */
+--- a/mx.c
++++ b/mx.c
 @@ -30,6 +30,10 @@
  #include "keymap.h"
  #include "url.h"
 @@ -30,6 +30,10 @@
  #include "keymap.h"
  #include "url.h"
@@ -963,7 +953,7 @@ diff -urN mutt-1.5.11/mx.c mutt-1.5.11-ro/mx.c
  #ifdef USE_IMAP
  #include "imap.h"
  #endif
  #ifdef USE_IMAP
  #include "imap.h"
  #endif
-@@ -454,6 +458,10 @@
+@@ -445,6 +449,10 @@ int mx_get_magic (const char *path)
      return (-1);
    }
  
      return (-1);
    }
  
@@ -974,7 +964,7 @@ diff -urN mutt-1.5.11/mx.c mutt-1.5.11-ro/mx.c
    return (magic);
  }
  
    return (magic);
  }
  
-@@ -493,6 +501,13 @@
+@@ -484,6 +492,13 @@ static int mx_open_mailbox_append (CONTE
  {
    struct stat sb;
  
  {
    struct stat sb;
  
@@ -988,7 +978,7 @@ diff -urN mutt-1.5.11/mx.c mutt-1.5.11-ro/mx.c
    ctx->append = 1;
  
  #ifdef USE_IMAP
    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);
    }
  
    ctx->magic = mx_get_magic (path);
@@ -1002,7 +992,7 @@ diff -urN mutt-1.5.11/mx.c mutt-1.5.11-ro/mx.c
    if(ctx->magic == 0)
      mutt_error (_("%s is not a mailbox."), path);
  
    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);
      mutt_free_header (&ctx->hdrs[i]);
    FREE (&ctx->hdrs);
    FREE (&ctx->v2r);
@@ -1013,10 +1003,10 @@ diff -urN mutt-1.5.11/mx.c mutt-1.5.11-ro/mx.c
    FREE (&ctx->path);
    FREE (&ctx->pattern);
    if (ctx->limit_pattern) 
    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);
    if (tmp && tmp->new == 0)
      mutt_update_mailbox (tmp);
- #endif
 +
 +#ifdef USE_COMPRESSED
 +  if (rc == 0 && ctx->compressinfo)
 +
 +#ifdef USE_COMPRESSED
 +  if (rc == 0 && ctx->compressinfo)
@@ -1026,7 +1016,7 @@ diff -urN mutt-1.5.11/mx.c mutt-1.5.11-ro/mx.c
    return rc;
  }
  
    return rc;
  }
  
-@@ -1021,6 +1051,11 @@
+@@ -1058,6 +1088,11 @@ int mx_close_mailbox (CONTEXT *ctx, int 
        !mutt_is_spool(ctx->path) && !option (OPTSAVEEMPTY))
      mx_unlink_empty (ctx->path);
  
        !mutt_is_spool(ctx->path) && !option (OPTSAVEEMPTY))
      mx_unlink_empty (ctx->path);
  
@@ -1038,7 +1028,7 @@ diff -urN mutt-1.5.11/mx.c mutt-1.5.11-ro/mx.c
    mx_fastclose_mailbox (ctx);
  
    return 0;
    mx_fastclose_mailbox (ctx);
  
    return 0;
-@@ -1330,6 +1365,11 @@
+@@ -1373,6 +1408,11 @@ int mx_check_mailbox (CONTEXT *ctx, int 
  {
    int rc;
  
  {
    int rc;
  
@@ -1050,10 +1040,9 @@ diff -urN mutt-1.5.11/mx.c mutt-1.5.11-ro/mx.c
    if (ctx)
    {
      if (ctx->locked) lock = 0;
    if (ctx)
    {
      if (ctx->locked) lock = 0;
-diff -urN mutt-1.5.11/mx.h mutt-1.5.11-ro/mx.h
---- mutt-1.5.11/mx.h   2003-08-05 15:58:16.000000000 +0200
-+++ mutt-1.5.11-ro/mx.h        2005-09-27 13:27:02.000000000 +0200
-@@ -40,6 +40,9 @@
+--- a/mx.h
++++ b/mx.h
+@@ -40,6 +40,9 @@ enum
  #ifdef USE_POP
    , M_POP
  #endif
  #ifdef USE_POP
    , M_POP
  #endif
@@ -1063,15 +1052,18 @@ diff -urN mutt-1.5.11/mx.h mutt-1.5.11-ro/mx.h
  };
  
  WHERE short DefaultMagic INITVAL (M_MBOX);
  };
  
  WHERE short DefaultMagic INITVAL (M_MBOX);
-diff -urN mutt-1.5.11/PATCHES mutt-1.5.11-ro/PATCHES
---- mutt-1.5.11/PATCHES        2005-08-15 10:16:00.000000000 +0200
-+++ mutt-1.5.11-ro/PATCHES     2005-09-27 13:30:25.000000000 +0200
-@@ -0,0 +1 @@
-+patch-1.5.11.rr.compressed.1
-diff -urN mutt-1.5.11/po/de.po mutt-1.5.11-ro/po/de.po
---- mutt-1.5.11/po/de.po       2005-09-15 16:23:50.000000000 +0200
-+++ mutt-1.5.11-ro/po/de.po    2005-09-27 13:27:02.000000000 +0200
-@@ -1262,6 +1262,48 @@
+--- a/po/de.po
++++ b/po/de.po
+@@ -3,7 +3,7 @@ msgstr ""
+ "Project-Id-Version: 1.5.16\n"
+ "Report-Msgid-Bugs-To: \n"
+ "POT-Creation-Date: 2007-06-09 20:30-0700\n"
+-"PO-Revision-Date: 2007-06-10 17:18+0200\n"
++"PO-Revision-Date: 2007-09-08 22:04+0200\n"
+ "Last-Translator: Roland Rosenfeld <roland@spinnaker.de>\n"
+ "Language-Team: German <mutt-po@mutt.org>\n"
+ "MIME-Version: 1.0\n"
+@@ -1279,6 +1279,48 @@ msgstr "Prüfung des Absenders fehlgeschl
  msgid "Failed to figure out sender"
  msgstr "Kann Absender nicht ermitteln"
  
  msgid "Failed to figure out sender"
  msgstr "Kann Absender nicht ermitteln"
  
@@ -1120,40 +1112,39 @@ diff -urN mutt-1.5.11/po/de.po mutt-1.5.11-ro/po/de.po
  #: crypt.c:69
  #, c-format
  msgid " (current time: %c)"
  #: crypt.c:69
  #, c-format
  msgid " (current time: %c)"
-@@ -1882,6 +1924,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
  
 +#: hook.c:96
-+msgid "bad formatted command string"
++msgid "badly formatted command string"
 +msgstr "Hook enthält nicht die Muster %f und %t"
 +
 +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."
  #, c-format
  msgid "unhook: Can't do unhook * from within a hook."
-@@ -3336,18 +3382,10 @@
+@@ -3452,18 +3498,10 @@ msgstr "Lese %s..."
  msgid "Mailbox is corrupt!"
  msgstr "Mailbox fehlerhaft!"
  
  msgid "Mailbox is corrupt!"
  msgstr "Mailbox fehlerhaft!"
  
--#: mbox.c:662
+-#: mbox.c:670
 -msgid "Mailbox was corrupted!"
 -msgstr "Mailbox wurde zerstört!"
 -
 -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!"
  
  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.
 -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.
-diff -urN mutt-1.5.11/po/POTFILES.in mutt-1.5.11-ro/po/POTFILES.in
---- mutt-1.5.11/po/POTFILES.in 2005-08-03 11:17:47.000000000 +0200
-+++ mutt-1.5.11-ro/po/POTFILES.in      2005-09-27 13:27:02.000000000 +0200
-@@ -8,6 +8,7 @@
+--- a/po/POTFILES.in
++++ b/po/POTFILES.in
+@@ -8,6 +8,7 @@ charset.c
  color.c
  commands.c
  compose.c
  color.c
  commands.c
  compose.c
@@ -1161,10 +1152,9 @@ diff -urN mutt-1.5.11/po/POTFILES.in mutt-1.5.11-ro/po/POTFILES.in
  crypt-gpgme.c
  crypt.c
  cryptglue.c
  crypt-gpgme.c
  crypt.c
  cryptglue.c
-diff -urN mutt-1.5.11/status.c mutt-1.5.11-ro/status.c
---- mutt-1.5.11/status.c       2005-02-03 19:47:53.000000000 +0100
-+++ mutt-1.5.11-ro/status.c    2005-09-27 13:27:02.000000000 +0200
-@@ -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);
  
      case 'f':
        snprintf (fmt, sizeof(fmt), "%%%ss", prefix);
@@ -1179,3 +1169,7 @@ diff -urN mutt-1.5.11/status.c mutt-1.5.11-ro/status.c
        if (Context && Context->path)
        {
        strfcpy (tmp, Context->path, sizeof (tmp));
        if (Context && Context->path)
        {
        strfcpy (tmp, Context->path, sizeof (tmp));
+--- a/PATCHES
++++ b/PATCHES
+@@ -0,0 +1 @@
++patch-1.5.16.rr.compressed.1