summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/calendar/calendar.el2
2 files changed, 6 insertions, 1 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index fb710374e18..c5be8c263d5 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2012-06-22 Glenn Morris <rgm@gnu.org>
+
+ * calendar/calendar.el (calendar-in-read-only-buffer):
+ Avoid some needless mode changes.
+
2012-06-21 Chong Yidong <cyd@gnu.org>
* desktop.el (desktop-read): Don't prompt if daemon (Bug#11674).
diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el
index 0d6ea8e7f4c..c47bbdff5ec 100644
--- a/lisp/calendar/calendar.el
+++ b/lisp/calendar/calendar.el
@@ -1112,7 +1112,7 @@ with disabled undo. Leaves point at point-min, displays BUFFER."
(declare (indent 1) (debug t))
`(progn
(set-buffer (get-buffer-create ,buffer))
- (special-mode)
+ (or (derived-mode-p 'special-mode) (special-mode))
(setq buffer-read-only nil
buffer-undo-list t)
(erase-buffer)