;; Remember whether a buffer has a local display table.
(unless whitespace-display-table-was-local
(setq whitespace-display-table-was-local t)
- (unless (or whitespace-mode global-whitespace-mode)
- (setq whitespace-display-table
- (copy-sequence buffer-display-table)))
+ ;; Save the old table so we can restore it when
+ ;; `whitespace-mode' is switched off again.
+ (when (or whitespace-mode global-whitespace-mode)
+ (setq whitespace-display-table
+ (copy-sequence buffer-display-table)))
;; Assure `buffer-display-table' is unique
;; when two or more windows are visible.
(setq buffer-display-table