Subject: bug#17497: The text-mode menu looks very broken in emacs-24

From: Eli Zaretskii <[email-masked]>
Date: Sat, 21 Jun 2014 14:26:15 +0300

> From: Mario Lang <[email-masked]>
> Cc: [email-masked]
> Date: Sat, 21 Jun 2014 12:14:44 +0200
> 
> I am running in GNU/Screen on GNU/Linux (kernel 3.14).

Thanks.  Which brand of GNU/Linux is that?

> This bug only happens when scrolling down anything else than the first
> toplevel entry, because the first toplevel menu is already
> left-justified...  And it does not happen all the time.  In fact,
> while it is reproducible, it doesnt reproduce the same way everytime I
> try it.  Sometimes I need to go down 10 or 15 elements until one gets}
> drawn in the wrong position, and sometimes I just go down two or three
> items.  I am not sure, but it *feels* like the issue is easier to
> reproduce if I hit down-arrow rapidly in succession.
> 
> This *feels* like memory corruption, as if the x coordinate is randomly
> set to 0 in some situations.

I don't think it's memory corruption.  I suspect the problem is
related to the different ways cmgoto chooses to get to the specified
screen coordinates.  If someone on the affected systems could tweak
cmgoto such that only the direct move is used, i.e. this code:

      p = (dcm == tty->Wcm->cm_habs
           ? tgoto (dcm, row, col)
           : tgoto (dcm, col, row));
      emacs_tputs (tty, p, 1, cmputc);
      curY (tty) = row, curX (tty) = col;

then perhaps we could see if my suspicions are in the right direction.

Thanks.