]> granicus.if.org Git - mutt/commitdiff
Various fixes.
authorThomas Roessler <roessler@does-not-exist.org>
Mon, 3 May 1999 10:07:08 +0000 (10:07 +0000)
committerThomas Roessler <roessler@does-not-exist.org>
Mon, 3 May 1999 10:07:08 +0000 (10:07 +0000)
keymap.c
menu.c
pgpkey.c
send.c

index c6acd63d4b8966029263e3d44627df878efc7819..ed547bddabe9fb2225ee0ea0b43e7ad64c1971c4 100644 (file)
--- a/keymap.c
+++ b/keymap.c
@@ -269,6 +269,13 @@ static void push_string (char *s)
        ;
       if (pp >= s)
       {
+       if ((i = parse_fkey (pp)) > 0)
+       {
+         mutt_ungetch (KEY_F (i), 0);
+         p = pp - 1;
+         continue;
+       }
+
        l = p - pp + 1;
        for (i = 0; KeyNames[i].name; i++)
        {
diff --git a/menu.c b/menu.c
index 2e0c23e4fddb29a170c31902c81fd4b2709f7348..4d359efb64cd03fb1051434a62c80217bc7f84da 100644 (file)
--- a/menu.c
+++ b/menu.c
@@ -274,10 +274,11 @@ void menu_redraw_current (MUTTMENU *menu)
 
 void menu_check_recenter (MUTTMENU *menu)
 {
-  if (menu->max <= menu->pagelen)
+  if (menu->max <= menu->pagelen && menu->top != 0)
   {
     menu->top = 0;
     set_option (OPTNEEDREDRAW);
+    menu->redraw |= REDRAW_INDEX;
   }
   else if (menu->current >= menu->top + menu->pagelen)
   {
@@ -285,6 +286,7 @@ void menu_check_recenter (MUTTMENU *menu)
       menu->top = menu->current - menu->pagelen + 1;
     else
       menu->top += menu->pagelen * ((menu->current - menu->top) / menu->pagelen);
+    menu->redraw |= REDRAW_INDEX;
   }
   else if (menu->current < menu->top)
   {
@@ -296,8 +298,8 @@ void menu_check_recenter (MUTTMENU *menu)
       if (menu->top < 0)
        menu->top = 0;
     }
+    menu->redraw |= REDRAW_INDEX;
   }
-  menu->redraw |= REDRAW_INDEX;
 }
 
 void menu_jump (MUTTMENU *menu)
index a672e80bb863e02cdb6c7c0a38810eb16857f040..eb588a2c67c0beee03126ef29be1de8f4e8dd294 100644 (file)
--- a/pgpkey.c
+++ b/pgpkey.c
@@ -35,6 +35,8 @@
 #include <sys/stat.h>
 #include <sys/wait.h>
 
+#include <locale.h>
+
 #ifdef _PGPPATH
 
 struct pgp_cache
diff --git a/send.c b/send.c
index e51e7b906237b1b1edc3d2c6e134c74080004e87..f287e96b185589799e13a66cfa485140222dcde6 100644 (file)
--- a/send.c
+++ b/send.c
@@ -874,7 +874,6 @@ ci_send_message (int flags,         /* send mode */
   FILE *tempfp = NULL;
   BODY *pbody;
   int i, killfrom = 0;
-  struct stat st;
 
 #ifdef _PGPPATH
   BODY *save_content = NULL;
@@ -1206,19 +1205,6 @@ main_loop:
     goto main_loop;
   }
 
-  /* Do FCC checking before any real processing happens, so we 
-   * don't have to do too much clean-up work.
-   */
-  
-  mutt_expand_path (fcc, sizeof (fcc));
-  if (*fcc && mutt_strcmp ("/dev/null", fcc) != 0 &&
-      !option (OPTNOCURSES) && !(flags & SENDMAILX) &&
-      !mutt_save_confirm (fcc, &st))
-  {
-    mutt_clear_error ();
-    goto main_loop;
-  }
-
   if (msg->content->next)
     msg->content = mutt_make_multipart (msg->content);
 
@@ -1274,6 +1260,7 @@ main_loop:
 
   /* save a copy of the message, if necessary. */
 
+  mutt_expand_path (fcc, sizeof (fcc));
   if (*fcc && mutt_strcmp ("/dev/null", fcc) != 0)
   {
     BODY *tmpbody = msg->content;