X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=commands.c;h=13d26e277abb5cb6efbdb33d23b2b44ee3d71cb5;hb=90d59c61839822ec7897955ffa815eb358224d2c;hp=33051bb7786a5c3ae18f907ff208498937222fe4;hpb=df70e07e24add1869bcc9b7af2277d9d0c09a281;p=apps%2Fmadmutt.git diff --git a/commands.c b/commands.c index 33051bb..13d26e2 100644 --- a/commands.c +++ b/commands.c @@ -1,20 +1,11 @@ /* + * Copyright notice from original mutt: * Copyright (C) 1996-2000 Michael R. Elkins * Copyright (C) 2000 Thomas Roessler - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. + * + * This file is part of mutt-ng, see http://www.muttng.org/. + * It's licensed under the GNU General Public License, + * please see the file GPL in the top level source directory. */ #if HAVE_CONFIG_H @@ -26,7 +17,6 @@ #include "mutt_menu.h" #include "mime.h" #include "sort.h" -#include "mailbox.h" #include "copy.h" #include "mx.h" #include "pager.h" @@ -45,6 +35,11 @@ #include "buffy.h" #endif +#include "lib/mem.h" +#include "lib/intl.h" +#include "lib/str.h" +#include "lib/debug.h" + #include #include #include @@ -128,7 +123,7 @@ int mutt_display_message (HEADER * cur) } } - if (!Pager || mutt_strcmp (Pager, "builtin") == 0) + if (!Pager || safe_strcmp (Pager, "builtin") == 0) builtin = 1; else { mutt_make_string (buf, sizeof (buf), NONULL (PagerFmt), Context, cur); @@ -357,7 +352,7 @@ static int _mutt_pipe_message (HEADER * h, char *cmd, mutt_endwin (NULL); if ((thepid = mutt_create_filter (cmd, &fpout, NULL, NULL)) < 0) { - mutt_perror _("Can't create filter process"); + mutt_perror (_("Can't create filter process")); return 1; } @@ -388,7 +383,7 @@ static int _mutt_pipe_message (HEADER * h, char *cmd, M_MESSAGEHOOK); mutt_endwin (NULL); if ((thepid = mutt_create_filter (cmd, &fpout, NULL, NULL)) < 0) { - mutt_perror _("Can't create filter process"); + mutt_perror (_("Can't create filter process")); return 1; } @@ -405,7 +400,7 @@ static int _mutt_pipe_message (HEADER * h, char *cmd, else { mutt_endwin (NULL); if ((thepid = mutt_create_filter (cmd, &fpout, NULL, NULL)) < 0) { - mutt_perror _("Can't create filter process"); + mutt_perror (_("Can't create filter process")); return 1; } @@ -729,7 +724,7 @@ int mutt_save_message (HEADER * h, int delete, /* This is an undocumented feature of ELM pointed out to me by Felix von * Leitner */ - if (mutt_strcmp (buf, ".") == 0) + if (safe_strcmp (buf, ".") == 0) strfcpy (buf, LastSaveFolder, sizeof (buf)); else strfcpy (LastSaveFolder, buf, sizeof (LastSaveFolder)); @@ -747,7 +742,7 @@ int mutt_save_message (HEADER * h, int delete, mutt_message (_("Copying to %s..."), buf); #ifdef USE_IMAP - if (Context->magic == M_IMAP && !(decode || decrypt) && mx_is_imap (buf)) { + if (Context->magic == M_IMAP && !(decode || decrypt) && mx_get_magic (buf) == M_IMAP) { switch (imap_copy_messages (Context, h, buf, delete)) { /* success */ case 0: @@ -785,7 +780,7 @@ int mutt_save_message (HEADER * h, int delete, #ifdef BUFFY_SIZE tmp = mutt_find_mailbox (buf); if (tmp && tmp->new <= 0) - mutt_update_mailbox (tmp); + buffy_update_mailbox (tmp); #else /* fix up the times so buffy won't get confused */ if (st.st_mtime > st.st_atime) { @@ -816,26 +811,26 @@ int mutt_update_list_file (char *filename, char *section, char *key, int ext = 0, done = 0, r = 0; snprintf (oldfile, sizeof (oldfile), "%s.bak", filename); - dprint (1, (debugfile, "Renaming %s to %s\n", filename, oldfile)); + debug_print (1, ("Renaming %s to %s\n", filename, oldfile)); /* if file not exist, create it */ if ((ifp = safe_fopen (filename, "a"))) fclose (ifp); if (_mutt_rename_file (filename, oldfile, 1)) { - mutt_perror _("Unable to create backup file"); + mutt_perror (_("Unable to create backup file")); return (-1); } - dprint (1, (debugfile, "Opening %s\n", oldfile)); + debug_print (1, ("Opening %s\n", oldfile)); if (!(ifp = safe_fopen (oldfile, "r"))) { - mutt_perror _("Unable to open backup file for reading"); + mutt_perror (_("Unable to open backup file for reading")); return (-1); } - dprint (1, (debugfile, "Opening %s\n", filename)); + debug_print (1, ("Opening %s\n", filename)); if (!(ofp = safe_fopen (filename, "w"))) { fclose (ifp); - mutt_perror _("Unable to open new file for writing"); + mutt_perror (_("Unable to open new file for writing")); return (-1); } @@ -854,7 +849,7 @@ int mutt_update_list_file (char *filename, char *section, char *key, while (*c && *c != '\n') c++; c[0] = 0; /* strip EOL */ - if (!strncmp (buf, "#: ", 3) && !mutt_strcasecmp (buf + 3, section)) + if (!strncmp (buf, "#: ", 3) && !safe_strcasecmp (buf + 3, section)) done++; } if (r != EOF && !done) { @@ -882,8 +877,8 @@ int mutt_update_list_file (char *filename, char *section, char *key, done++; break; } - else if (key && !strncmp (buf, key, strlen (key)) && - (!*key || buf[strlen (key)] == ' ')) { + else if (key && !strncmp (buf, key, safe_strlen (key)) && + (!*key || buf[safe_strlen (key)] == ' ')) { c = buf; ext = 0; while (*c && (*c != '\r') && (*c != '\n')) @@ -952,7 +947,7 @@ void mutt_edit_content_type (HEADER * h, BODY * b, FILE * fp) size_t l; for (p = b->parameter; p; p = p->next) { - l = strlen (buf); + l = safe_strlen (buf); rfc822_cat (tmp, sizeof (tmp), p->value, MimeSpecials); snprintf (buf + l, sizeof (buf) - l, "; %s=%s", p->attribute, tmp);