X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=editmsg.c;h=cb6616f4c8d32f99664a155877e7a22ed62d14d1;hp=8f2a9fa9d5684e814a541610e4e82b8c06d52cad;hb=b36dc16c428cc2b1371bb99c0581aa014f302791;hpb=ee1d4d931ca3ebec494694b74a1868a7a2e631e3 diff --git a/editmsg.c b/editmsg.c index 8f2a9fa..cb6616f 100644 --- a/editmsg.c +++ b/editmsg.c @@ -13,12 +13,14 @@ # include "config.h" #endif +#include +#include +#include + #include "mutt.h" #include "copy.h" #include "mx.h" -#include "lib/intl.h" -#include "lib/str.h" #include #include @@ -53,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); @@ -81,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 @@ -92,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; @@ -111,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;