Simplify string-pixel-width

* lisp/emacs-lisp/subr-x.el (string-pixel-width): Simplify --
save-window-excursion saves dedication status (and the code was
buggy).
This commit is contained in:
Lars Ingebrigtsen 2021-10-27 16:50:40 +02:00
parent 713e19a60a
commit 7c6f7dc99b

View file

@ -447,18 +447,12 @@ is inserted before adjusting the number of empty lines."
(with-temp-buffer
(insert string)
(save-window-excursion
(let ((dedicated (window-dedicated-p)))
;; Avoid errors if the selected window is a dedicated one,
;; and they just want to insert a document into it.
(unwind-protect
(progn
(when dedicated
(set-window-dedicated-p nil nil))
(set-window-buffer nil (current-buffer))
(car (window-text-pixel-size
nil (line-beginning-position) (point))))
(when dedicated
(set-window-dedicated-p nil dedicated)))))))
;; Avoid errors if the selected window is a dedicated one,
;; and they just want to insert a document into it.
(set-window-dedicated-p nil nil)
(set-window-buffer nil (current-buffer))
(car (window-text-pixel-size
nil (line-beginning-position) (point))))))
(provide 'subr-x)