emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

assertion failure in keyboard.c:adjust_point_for_property


From: Miles Bader
Subject: assertion failure in keyboard.c:adjust_point_for_property
Date: 26 Feb 2004 11:30:29 +0900

Hi, another questionable (I think) assertion failure, this time in
adjust_point_for_property (keyboard.c):

        ...
          /* Move away from the inside area.  */
          if (beg < PT && end > PT)
            {
              SET_PT ((orig_pt == PT && (last_pt < beg || last_pt > end))
                      /* ... */
                      ? (orig_pt = -1, PT < last_pt ? end : beg)
                      /* ... */
                      : (PT < last_pt ? beg : end));
              check_composition = check_display = 1;
            }
===>      xassert (PT == beg || PT == end);

I'm not sure exactly what happened here (gdb sess attached below
though), but PT == 500, and end == 499.

The context is that I was trying out `line-move-ignore-invisible' (after
seeing Luc's post), setting it to `t', and viewing some messages in Gnus
where invisible text was used to elide citations.  At some point it
died (I think I was using C-n and C-p to move past the invisible area
seeing how the above variable affected things).

What I'm wondering is: is this assertion reasonable?  SET_PT can do
non-trivial things (calling hooks etc), so assuming that point ends up
being exactly what you set it too seems a bit questionable.

Thanks,

-Miles


Attachment: gdb-sess.txt
Description: GDB session for emacs assertion failure



-- 
In New York, most people don't have cars, so if you want to kill a person, you
have to take the subway to their house.  And sometimes on the way, the train
is delayed and you get impatient, so you have to kill someone on the subway.
  [George Carlin]

reply via email to

[Prev in Thread] Current Thread [Next in Thread]