X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=editmsg.c;h=cb6616f4c8d32f99664a155877e7a22ed62d14d1;hp=287c72c2df2173ad98aeb78627d766683d422052;hb=b36dc16c428cc2b1371bb99c0581aa014f302791;hpb=74a2265af51ce89bca845adc1d68f273c9933c13 diff --git a/editmsg.c b/editmsg.c index 287c72c..cb6616f 100644 --- a/editmsg.c +++ b/editmsg.c @@ -13,13 +13,14 @@ # include "config.h" #endif +#include +#include +#include + #include "mutt.h" #include "copy.h" -#include "mailbox.h" #include "mx.h" -#include "lib/intl.h" -#include "lib/str.h" #include #include @@ -54,6 +55,7 @@ static int edit_one_message (CONTEXT * ctx, HEADER * cur) struct stat sb; time_t mtime = 0; + size_t size = 0; mutt_mktemp (tmp); @@ -82,8 +84,10 @@ static int edit_one_message (CONTEXT * ctx, HEADER * cur) goto bail; } - if (stat (tmp, &sb) == 0) + if (stat (tmp, &sb) == 0) { mtime = sb.st_mtime; + size = sb.st_size; + } /* * 2002-09-05 me@sigpipe.org @@ -93,7 +97,7 @@ static int edit_one_message (CONTEXT * ctx, HEADER * cur) * remove it, the message will grow by one line each time the user edits * the message. */ - if (sb.st_size != 0 && truncate (tmp, sb.st_size - 1) == -1) { + if (size != 0 && truncate (tmp, --size) == -1) { mutt_error (_("could not truncate temporary mail folder: %s"), strerror (errno)); goto bail; @@ -112,7 +116,7 @@ static int edit_one_message (CONTEXT * ctx, HEADER * cur) goto bail; } - if (sb.st_mtime == mtime) { + if (sb.st_mtime == mtime && sb.st_size == size) { mutt_message (_("Message not modified!")); rc = 1; goto bail;