--- handler.c +++ handler.c 2013-04-18 12:51:41.414000078 +0000 @@ -1650,7 +1650,7 @@ int mutt_body_handler (BODY *b, STATE *s /* decode to a tempfile, saving the original destination */ fp = s->fpout; #ifdef HAVE_FMEMOPEN - if ((s->fpout = open_memstream(&temp, &tempsize)) == NULL) + if ((s->fpout = open_wmemstream(&temp, &tempsize)) == NULL) { mutt_error _("Unable to open memory stream!"); dprint (1, (debugfile, "Can't open memory stream.\n")); --- pattern.c +++ pattern.c 2013-04-18 12:52:06.573939217 +0000 @@ -168,7 +168,7 @@ msg_search (CONTEXT *ctx, pattern_t* pat s.fpin = msg->fp; s.flags = M_CHARCONV; #ifdef HAVE_FMEMOPEN - if((s.fpout = open_memstream(&temp, &tempsize)) == NULL) + if((s.fpout = open_wmemstream(&temp, &tempsize)) == NULL) { mutt_perror ("Error opening memstream"); return (0);