Skip to content

Commit 117cf88

Browse files
committed
Disable undo on the debug log buffer
* xcb-debug.el (xcb-debug:-get-buffer): New function initializing the debug log buffer. (xcb-debug:backtrace, xcb-debug:-with-debug-buffer): Use it.
1 parent 04db92e commit 117cf88

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

xcb-debug.el

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ Here are some predefined candidates:
7474

7575
(defmacro xcb-debug:-with-debug-buffer (&rest forms)
7676
"Evaluate FORMS making sure `xcb-debug:buffer' is correctly updated."
77-
`(with-current-buffer (get-buffer-create xcb-debug:buffer)
77+
`(with-current-buffer (xcb-debug:-get-buffer)
7878
(let (windows-eob)
7979
;; Note windows whose point is at EOB.
8080
(dolist (w (get-buffer-window-list xcb-debug:buffer t 'nomini))
@@ -98,7 +98,7 @@ the passed OBJECTS. See `format' for details."
9898
(defmacro xcb-debug:backtrace ()
9999
"Print a backtrace to the `xcb-debug:buffer'."
100100
'(xcb-debug:-with-debug-buffer
101-
(let ((standard-output (get-buffer-create xcb-debug:buffer)))
101+
(let ((standard-output (xcb-debug:-get-buffer)))
102102
(backtrace))))
103103

104104
(defmacro xcb-debug:backtrace-on-error (&rest forms)
@@ -107,6 +107,14 @@ the passed OBJECTS. See `format' for details."
107107
(debugger (lambda (&rest _) (xcb-debug:backtrace))))
108108
,@forms))
109109

110+
(defun xcb-debug:-get-buffer ()
111+
"Get or create `xcb-debug:buffer'."
112+
(let ((buffer (get-buffer xcb-debug:buffer)))
113+
(unless buffer
114+
(setq buffer (get-buffer-create xcb-debug:buffer))
115+
(buffer-disable-undo buffer))
116+
buffer))
117+
110118
(defun xcb-debug:clear ()
111119
"Clear the debug buffer."
112120
(interactive)

0 commit comments

Comments
 (0)