> (dbx) frame 1
> Current function is update_interval
> (dbx) print pos
> pos = 30065
> (dbx) print i
> i = 0xb46710
> (dbx) print *i
> *i = {
> total_length = 357181U
> position = 144991U
> (*i).left = 0x110ba4c
> (*i).right = 0x1113f10
> up = {
> (*i).up.interval = 0x80f1e800
> obj = -2131630080
> }
> up_obj = 1U
> gcmarkbit = 0
> write_protect = 0
> visible = 0
> front_sticky = 0
> rear_sticky = 0
> plist = 541931520
> }
> (dbx) print *i->left
> *i->left = {
> total_length = 145078U
The above already looks wrong: i->left covers 145078 chars, so i->position
should be at least 145078 + 1 (aka BEG). The difference, 88, is presumably
the length of the line you copied&pasted, so i's position hasn't been
updated as it should have (the `position' field of interval nodes is updated
lazily, so it's sometimes normal for it to be out-of-date, but not in this
case).
> What should I look for re the buffer text properties? The buffer is full of
> them - it's visiting a C++ file.
Without a reliable way to reproduce the problem, it's going to be difficult
to fix it, because the problem is most likely introduced sometime *before*
we crash.
Stefan
_______________________________________________
emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug