Subject: Re: bug#2749: 23.0.91; Visual Line Mode: incorrect line wrapping in corner case

From: Stephen Berman <[email-masked]>
Date: Fri, 10 May 2013 17:49:40 +0200

On Fri, 10 May 2013 17:59:43 +0300 Eli Zaretskii <[email-masked]> wrote:

>> From: Stephen Berman <[email-masked]>
>> Date: Fri, 10 May 2013 16:01:22 +0200
>> Cc: pent <[email-masked]>, [email-masked]
>> 
>> I've been using Emacs as described above (i.e., with the patch below)
>> and till today have had no problems, but I just bumped into one, which
>> is indeed confusing, even pretty nasty.  I've reproduced it with -Q on a
>> fresh build from the latest trunk (with the patch added).  I don't know
>> how to debug it, but I will describe how to reproduce it, in the hope
>> that someone can fix it (or at least give me some help in trying to
>> debug it) and then hopefully overflow-newline-into-fringe can be allowed
>> in Visual Line mode.
>
> Does the patch below fix the problem (and whatever original problem
> that led you to this recipe)?
>
> --- src/xdisp.c~0	2013-05-10 17:56:44.338000000 +0300
> +++ src/xdisp.c	2013-05-10 17:57:07.197375000 +0300
> @@ -8466,7 +8466,8 @@
>  				   && it->bidi_it.paragraph_dir == R2L)
>  				  ? WINDOW_LEFT_FRINGE_WIDTH (it->w)
>  				  : WINDOW_RIGHT_FRINGE_WIDTH (it->w)) == 0
> -			      || IT_OVERFLOW_NEWLINE_INTO_FRINGE (it))
> +			      || (IT_OVERFLOW_NEWLINE_INTO_FRINGE (it)
> +				  && it->line_wrap != WORD_WRAP))
>  			    {
>  			      if (!get_next_display_element (it))
>  				{

Yes, it fixes the "confusing results" with the patch in my previous
mail.  Thanks very much!  (I wish I understood why this problem occurred
and how your patch fixes it...)  Unless someone knows of another problem
with allowing overflow-newline-into-fringe in Visual Line mode, I would
like to request that both my patch and yours be committed to the trunk;
I can do that if I'm given the go-ahead.  Then I think this bug could be
closed.

Steve Berman