1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-15 10:30:25 -08:00

(widget-field-end): If the overlay is no longer associated with a buffer,

behave as if the overlay didn't exist.
This commit is contained in:
Eli Zaretskii 2006-01-13 19:56:54 +00:00
parent 83dc149dec
commit e47f89f079
2 changed files with 21 additions and 16 deletions

View file

@ -1203,22 +1203,24 @@ When not inside a field, move to the previous button or field."
;; or if a special `boundary' field has been added after the widget
;; field.
(if (overlayp overlay)
(if (and (not (eq (with-current-buffer
(widget-field-buffer widget)
(save-restriction
;; `widget-narrow-to-field' can be
;; active when this function is called
;; from an change-functions hook. So
;; temporarily remove field narrowing
;; before to call `get-char-property'.
(widen)
(get-char-property (overlay-end overlay)
'field)))
'boundary))
(or widget-field-add-space
(null (widget-get widget :size))))
(1- (overlay-end overlay))
(overlay-end overlay))
;; Don't proceed if overlay has been removed from buffer.
(when (overlay-buffer overlay)
(if (and (not (eq (with-current-buffer
(widget-field-buffer widget)
(save-restriction
;; `widget-narrow-to-field' can be
;; active when this function is called
;; from an change-functions hook. So
;; temporarily remove field narrowing
;; before to call `get-char-property'.
(widen)
(get-char-property (overlay-end overlay)
'field)))
'boundary))
(or widget-field-add-space
(null (widget-get widget :size))))
(1- (overlay-end overlay))
(overlay-end overlay)))
(cdr overlay))))
(defun widget-field-find (pos)