[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: scroll-conservatively overflow
From: |
Romain Francoise |
Subject: |
Re: scroll-conservatively overflow |
Date: |
Fri, 16 Apr 2004 16:03:59 +0200 |
User-agent: |
Gnus/5.110002 (No Gnus v0.2) Emacs/21.3.50 (gnu/linux) |
address@hidden (Kim F. Storm) writes:
> I changed some things related to scroll a few days ago which may have
> made this more visible -- I don't know.
About scrolling: I've been bitten by a bug for some weeks now, I
originally thought it was specific to the multi-tty code but I
discovered this morning that it's not. (A fresh checkout from CVS HEAD
this morning exhibited the same issues.)
I see it in two different situations:
1. In Gnus, when I scroll a long article buffer (several pages) by
repeatedly hitting RET to scroll one line at a time, scrolling stops
on truncated lines. For example, when I read an article that
contains one very long line (e.g. a URL), it scrolls okay until the
long line is the first line in the Article buffer. I hit RET again
and the first part of the line scrolls away. I still see in the
buffer the continuation part of the long (truncated) line, and if I
hit RET again, nothing happens, it doesn't scroll more. I have
traced the call back in the Lisp code and it shows that the
`scroll-up' builtin function returns nil as usual but doesn't have
any effect on the buffer. I can keep hitting RET to no avail.
Scrolling works fine until the "End of buffer" message as usual when
the article does not contain long lines; it also works fine if I
resize the window so that lines don't get truncated. It also works
fine if I scroll past long lines in the article with SPC, then use
RET to scroll one line at a time.
This bug is reproducible in all instances of Emacs, at once.
2. In Dired, I get "End of buffer" errors when moving over truncated
lines, from the top to the bottom of a buffer (with `n'). For
example, if my Dired buffer contains, in the middle of a long
listing:
-rw-r--r-- 1 romain romain 2047 Feb 26 2003 bpf_dump.c
lrwxr-xr-x 1 romain romain 22 Nov 11 12:26 bpf_filter.c ->
./bpf/net/bpf_filter.c
-rw-r--r-- 1 romain romain 4966 Feb 26 2003 bpf_image.c
(The middle line is truncated after "-> ./bp", I see:
bpf_filter.c -> ./bp\
f/net/bpf_filter.c
which might not be the case for you depending on your window width.)
I move the cursor down to the `b' in "bpf_dump.c". I then use `n'
which moves the point to the `b' in "bpf_filter.c". If I then use
`n' to move down to the next line over the symlink line, the bell is
rung, and I get a "End of buffer" message in the minibuffer, which
is obviously wrong since the buffer continues.. After the error,
the point is on the last `c' in "bpf_image.c", instead of being on
the `b', but I think this is because of some Dired magic which gets
confused by the error.
The fun part is that it does not only happen in Dired buffers: in
this very Message buffer where I'm composing this post, I can move up
to the top with C-p, but when I move down to the bottom with C-n, I
get an "End of buffer" error over the pasted Dired line.
This bug does not appear in a fresh Emacs session just after I
launch it, it appears only after I've used Emacs a bit.
This only happens in console frames, in X frames I never managed to
reproduce these bugs. They are _very_ annoying since it makes the
display flash the bell every once in a while even though no error
occurred...
I can provide more information if needed.
--
Romain Francoise <address@hidden> | You know that old saying,
it's a miracle -- http://orebokech.com/ | that you always hurt the ones
| you love? Well it works both
| ways.