]> git.eshelyaron.com Git - emacs.git/commitdiff
* ido.el (ido-tidy): Handle read-only text.
authorLeo Liu <sdl.web@gmail.com>
Wed, 23 Oct 2013 12:15:31 +0000 (20:15 +0800)
committerLeo Liu <sdl.web@gmail.com>
Wed, 23 Oct 2013 12:15:31 +0000 (20:15 +0800)
lisp/ChangeLog
lisp/ido.el

index ba2046e15b4bfa1e01ffc0f3f82c3e3822e61103..a3a94cf6a69e1ef778263484cad8fafce95cdc23 100644 (file)
@@ -1,3 +1,7 @@
+2013-10-23  Leo Liu  <sdl.web@gmail.com>
+
+       * ido.el (ido-tidy): Handle read-only text.
+
 2013-10-23  Glenn Morris  <rgm@gnu.org>
 
        * Makefile.in (abs_srcdir, abs_lisp): New, set by configure.
index e7216f595eae7654db84d204b4b1176fa05c0601..9a17c0ca61fc9abb7d8693b1a5eb2dfbab9b7a94 100644 (file)
@@ -4707,19 +4707,18 @@ Modified from `icomplete-completions'."
     (cancel-timer ido-auto-merge-timer)
     (setq ido-auto-merge-timer nil))
 
-  (if (ido-active)
-      (if (and (boundp 'ido-eoinput)
-              ido-eoinput)
-
-         (if (> ido-eoinput (point-max))
-             ;; Oops, got rug pulled out from under us - reinit:
-             (setq ido-eoinput (point-max))
-           (let ((buffer-undo-list t))
-             (delete-region ido-eoinput (point-max))))
-
-       ;; Reestablish the local variable 'cause minibuffer-setup is weird:
-       (make-local-variable 'ido-eoinput)
-       (setq ido-eoinput 1))))
+  (when (ido-active)
+    (if (bound-and-true-p ido-eoinput)
+       (if (> ido-eoinput (point-max))
+           ;; Oops, got rug pulled out from under us - reinit:
+           (setq ido-eoinput (point-max))
+         (let ((inhibit-read-only t)
+               (buffer-undo-list t))
+           (delete-region ido-eoinput (point-max))))
+
+      ;; Reestablish the local variable 'cause minibuffer-setup is weird:
+      (make-local-variable 'ido-eoinput)
+      (setq ido-eoinput 1))))
 
 (defun ido-summary-buffers-to-end ()
   ;; Move the summaries to the end of the buffer list.