Mercurial > emacs
diff src/intervals.c @ 90399:a5812696f7bf unicode-pre-font-backend
Merge from emacs--devo--0
Patches applied:
* emacs--devo--0 (patch 274-284)
- Update from CVS
- Update etc/MORE.STUFF.
- Merge from gnus--rel--5.10
* gnus--rel--5.10 (patch 101)
- Update from CVS
Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-62
author | Miles Bader <miles@gnu.org> |
---|---|
date | Wed, 17 May 2006 07:46:49 +0000 |
parents | c5406394f567 089c7a7af5c9 |
children | a8190f7e546e |
line wrap: on
line diff
--- a/src/intervals.c Mon May 15 03:48:50 2006 +0000 +++ b/src/intervals.c Wed May 17 07:46:49 2006 +0000 @@ -2196,36 +2196,38 @@ Lisp_Object leave_after, leave_before, enter_after, enter_before; if (fromprev) - leave_after = textget (fromprev->plist, Qpoint_left); + leave_before = textget (fromprev->plist, Qpoint_left); + else + leave_before = Qnil; + + if (from) + leave_after = textget (from->plist, Qpoint_left); else leave_after = Qnil; - if (from) - leave_before = textget (from->plist, Qpoint_left); - else - leave_before = Qnil; if (toprev) - enter_after = textget (toprev->plist, Qpoint_entered); + enter_before = textget (toprev->plist, Qpoint_entered); + else + enter_before = Qnil; + + if (to) + enter_after = textget (to->plist, Qpoint_entered); else enter_after = Qnil; - if (to) - enter_before = textget (to->plist, Qpoint_entered); - else - enter_before = Qnil; if (! EQ (leave_before, enter_before) && !NILP (leave_before)) - call2 (leave_before, make_number (old_position), - make_number (charpos)); + call2 (leave_before, make_number (old_position), + make_number (charpos)); if (! EQ (leave_after, enter_after) && !NILP (leave_after)) - call2 (leave_after, make_number (old_position), - make_number (charpos)); + call2 (leave_after, make_number (old_position), + make_number (charpos)); if (! EQ (enter_before, leave_before) && !NILP (enter_before)) - call2 (enter_before, make_number (old_position), - make_number (charpos)); + call2 (enter_before, make_number (old_position), + make_number (charpos)); if (! EQ (enter_after, leave_after) && !NILP (enter_after)) - call2 (enter_after, make_number (old_position), - make_number (charpos)); + call2 (enter_after, make_number (old_position), + make_number (charpos)); } } @@ -2339,7 +2341,9 @@ /* Return the proper local keymap TYPE for position POSITION in BUFFER; TYPE should be one of `keymap' or `local-map'. Use the map specified by the PROP property, if any. Otherwise, if TYPE is - `local-map' use BUFFER's local map. */ + `local-map' use BUFFER's local map. + + POSITION must be in the accessible part of BUFFER. */ Lisp_Object get_local_map (position, buffer, type) @@ -2351,7 +2355,7 @@ int old_begv, old_zv, old_begv_byte, old_zv_byte; /* Perhaps we should just change `position' to the limit. */ - if (position > BUF_Z (buffer) || position < BUF_BEG (buffer)) + if (position > BUF_ZV (buffer) || position < BUF_BEGV (buffer)) abort (); /* Ignore narrowing, so that a local map continues to be valid even if