Subject: 23.0.60; Unexpected point position after undo

From: Markus Triska <[email-masked]>
Date: Mon, 6 Oct 2008 03:14:40 +0200 (CEST)

In "emacs -Q", when I insert into *scratch* the form:

   (progn (end-of-line) (insert "\nhi"))

then place point on the "g" and press C-M-x C-/, then the insertion is
undone, and point remains on the "g", as expected. When I then press
C-h f C-g C-M-x C-/, the insertion is undone, and point is
unexpectedly placed at the end of the form. When I then place point on
the "g" again, and again press C-M-x C-/, point again stays put. In
Emacs 22.2, point remains on the "g" in all these cases. In CVS Emacs,
`buffer-undo-list' after the first C-M-x on "g" is:

   (nil
    (229 . 232)
    196 nil
    (nil rear-nonsticky nil 228 . 229)
    (nil fontified nil 192 . 229)
    (192 . 229)
    (t 0 . 0)
    nil
    (1 . 192)
    (t 0 . 0))

Again in CVS Emacs, `buffer-undo-list' after C-h f C-g C-M-x (in
"emacs -Q") on the form above, with point on its "g", is:

   (nil
    (229 . 232)
    nil
    (nil rear-nonsticky nil 228 . 229)
    (nil fontified nil 192 . 229)
    (192 . 229)
    (t 0 . 0)
    nil
    (1 . 192)
    (t 0 . 0))

In Emacs 22.2.92, `buffer-undo-list' in both cases is:

   (nil
    (38 . 41)
    5 nil
    (nil rear-nonsticky nil 37 . 38)
    (nil fontified nil 1 . 38)
    (1 . 38)
    (t 0 . 0))

In GNU Emacs 23.0.60.3 (i386-apple-darwin8.11.1, GTK+ Version 2.12.9)
 of 2008-10-05 on mt-computer.local
Windowing system distributor `The XFree86 Project, Inc', version 11.0.40400000
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_GB.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default-enable-multibyte-characters: t