GNU bug report logs -
#28936
move_it_in_display_line_to returns MOVE_POS_MATCH_OR_ZV before ZV
Previous Next
Full log
View this message in rfc822 format
I was able to verify this evening that it.current_x is indeed 0 immediately following a call to `move_it_by_lines (&it, 0)` when the issue is present.
It may be that move_it_in_display_line_to is reaching the correct X, but is merely throwing the wrong label/result in this situation -- i.e., it is not really reaching a POS or ZV. Since my loop was relying on the label/result, the loop exited too early. To test the correct X and wrong label/result theory, would take some time for me to work on because I would like to find the precise location inside move_it_in_display_line_to where the label/result is being returned. I will continue to think about this and tinker ...
Keith
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DATE: [10-22-2017 12:53:47] <22 Oct 2017 22:53:47 +0300>
FROM: Eli Zaretskii <eliz <at> gnu.org>
>
> > Date: Sun, 22 Oct 2017 11:05:45 -0700
> > From: Keith David Bershatsky <esq <at> lawlist.com>
> > Cc: 28936 <at> debbugs.gnu.org
> >
> > SET_TEXT_POS_FROM_MARKER (start_text_position, w->start);
> > start_display (&it, w, start_text_position);
> > move_it_to (&it, PT, it.last_visible_x, it.last_visible_y - 1, -1, MOVE_TO_POS | MOVE_TO_X | MOVE_TO_Y);
> > target_x = it.current_x;
> > move_it_by_lines (&it, 0);
>
> Did you verify that it.current_x is zero after this line? If not, you
> will not get to the right X coordnate here:
>
> > rc = move_it_in_display_line_to_x (w, &it, target_x);
This bug report was last modified 6 years and 137 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.