File widechar.sidebar.dif of Package mutt

---
 handler.c |   10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

--- handler.c
+++ handler.c	2017-04-28 13:34:40.080448389 +0000
@@ -816,6 +816,7 @@ static int text_enriched_handler(BODY *a
   enum
   {
     TEXT,
+    TEXT_GOTWC,
     LANGLE,
     TAG,
     BOGUS_TAG,
@@ -853,7 +854,7 @@ static int text_enriched_handler(BODY *a
   {
     if (state != ST_EOF)
     {
-      if (!bytes || (wc = fgetwc(s->fpin)) == WEOF)
+      if (state != TEXT_GOTWC && (!bytes || (fscanf (s->fpin, "%lc", &wc)) == EOF))
         state = ST_EOF;
       else
         bytes--;
@@ -861,6 +862,8 @@ static int text_enriched_handler(BODY *a
 
     switch (state)
     {
+      case TEXT_GOTWC:
+	state = TEXT;
       case TEXT:
         switch (wc)
         {
@@ -921,9 +924,8 @@ static int text_enriched_handler(BODY *a
           enriched_flush(&stte, 1);
         else
         {
-          ungetwc(wc, s->fpin);
           bytes++;
-          state = TEXT;
+          state = TEXT_GOTWC;
         }
         break;
 
@@ -1638,7 +1640,7 @@ void mutt_decode_attachment(BODY *b, STA
  * strip all trailing spaces to improve interoperability;
  * if $text_flowed is unset, simply verbatim copy input
  */
-static int text_plain_handler(BODY *b, STATE *s)
+static int text_plain_handler(BODY *b __attribute__((unused)), STATE *s)
 {
   char *buf = NULL;
   size_t l = 0, sz = 0;
openSUSE Build Service is sponsored by