Subject: bug#8989: keymap text property applies beyond the region it is set to

From: Dmitry Kurochkin <[email-masked]>
Date: Sun, 03 Jul 2011 10:25:57 +0400

Package: emacs
Version: 23.3.1

When keymap text property is set, it changes key binding for one
character after the region it is set to.  The following code
demonstrates the problem:

  (let ((map (make-sparse-keymap)))
    (define-key map (kbd "RET") 'bug)
    (switch-to-buffer "test")
    (insert "123456")
    (put-text-property 1 4 'keymap map)
    (goto-char 4)
    (message "keymap: %s"
             (get-text-property (point) 'keymap)) ; no keymap property here
    (message "key-binding: %s"
             (key-binding (kbd "RET")))) ; but the key binding is changed

Regards,
  Dmitry