aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenichi Handa2010-10-02 11:05:56 +0900
committerKenichi Handa2010-10-02 11:05:56 +0900
commit58ff7eb1527a999044bbd99a07e372e7d442ca7a (patch)
tree444641c566ff2abb1cfabb0b8e64583471b6b3a5
parent1911a33b9dc4beefaf75f67719ea7f6cf447b3ff (diff)
parentb336bfcdf39f1e4d35bff4a7bd01d3b4bca8f516 (diff)
downloademacs-58ff7eb1527a999044bbd99a07e372e7d442ca7a.tar.gz
emacs-58ff7eb1527a999044bbd99a07e372e7d442ca7a.zip
merge emacs-23
-rw-r--r--lib-src/ChangeLog5
-rw-r--r--lib-src/emacsclient.c13
-rw-r--r--lisp/ChangeLog9
-rw-r--r--lisp/minibuffer.el22
4 files changed, 45 insertions, 4 deletions
diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog
index 6b3584eb90f..11da74f63b0 100644
--- a/lib-src/ChangeLog
+++ b/lib-src/ChangeLog
@@ -1,3 +1,8 @@
12010-10-01 Glenn Morris <rgm@gnu.org>
2
3 * emacsclient.c (set_local_socket) [DARWIN_OS]: Try as a fall-back
4 DARWIN_USER_TEMP_DIR. (Bug#3992)
5
12010-05-07 Chong Yidong <cyd@stupidchicken.com> 62010-05-07 Chong Yidong <cyd@stupidchicken.com>
2 7
3 * Version 23.2 released. 8 * Version 23.2 released.
diff --git a/lib-src/emacsclient.c b/lib-src/emacsclient.c
index 01241b518bb..05f01b3b097 100644
--- a/lib-src/emacsclient.c
+++ b/lib-src/emacsclient.c
@@ -1249,7 +1249,18 @@ set_local_socket ()
1249 { 1249 {
1250 tmpdir = egetenv ("TMPDIR"); 1250 tmpdir = egetenv ("TMPDIR");
1251 if (!tmpdir) 1251 if (!tmpdir)
1252 tmpdir = "/tmp"; 1252 {
1253#ifdef DARWIN_OS
1254 size_t n = confstr (_CS_DARWIN_USER_TEMP_DIR, NULL, (size_t) 0);
1255 if (n > 0)
1256 {
1257 tmpdir = alloca (n);
1258 confstr (_CS_DARWIN_USER_TEMP_DIR, tmpdir, n);
1259 }
1260 else
1261#endif
1262 tmpdir = "/tmp";
1263 }
1253 socket_name = alloca (strlen (tmpdir) + strlen (server_name) 1264 socket_name = alloca (strlen (tmpdir) + strlen (server_name)
1254 + EXTRA_SPACE); 1265 + EXTRA_SPACE);
1255 sprintf (socket_name, "%s/emacs%d/%s", 1266 sprintf (socket_name, "%s/emacs%d/%s",
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 22cc8f3a3ed..696941f93cd 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
12010-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * minibuffer.el (completion--replace):
4 Better preserve markers (bug#7138).
5
12010-09-29 Juanma Barranquero <lekktu@gmail.com> 62010-09-29 Juanma Barranquero <lekktu@gmail.com>
2 7
3 * server.el (server-process-filter): Doc fix. 8 * server.el (server-process-filter): Doc fix.
@@ -10,8 +15,8 @@
10 15
11 * Makefile.in (ELCFILES): Update. 16 * Makefile.in (ELCFILES): Update.
12 17
13 * emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): Avoid 18 * emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
14 infinite recursion on erroneous lambda form. (Bug#7114) 19 Avoid infinite recursion on erroneous lambda form. (Bug#7114)
15 20
162010-09-27 Kenichi Handa <handa@m17n.org> 212010-09-27 Kenichi Handa <handa@m17n.org>
17 22
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el
index 93a222053f6..9a477020421 100644
--- a/lisp/minibuffer.el
+++ b/lisp/minibuffer.el
@@ -475,10 +475,30 @@ in the last `cdr'."
475(defun completion--replace (beg end newtext) 475(defun completion--replace (beg end newtext)
476 "Replace the buffer text between BEG and END with NEWTEXT. 476 "Replace the buffer text between BEG and END with NEWTEXT.
477Moves point to the end of the new text." 477Moves point to the end of the new text."
478 ;; This should be in subr.el. 478 ;; Maybe this should be in subr.el.
479 ;; You'd think this is trivial to do, but details matter if you want 479 ;; You'd think this is trivial to do, but details matter if you want
480 ;; to keep markers "at the right place" and be robust in the face of 480 ;; to keep markers "at the right place" and be robust in the face of
481 ;; after-change-functions that may themselves modify the buffer. 481 ;; after-change-functions that may themselves modify the buffer.
482 (let ((prefix-len 0))
483 ;; Don't touch markers in the shared prefix (if any).
484 (while (and (< prefix-len (length newtext))
485 (< (+ beg prefix-len) end)
486 (eq (char-after (+ beg prefix-len))
487 (aref newtext prefix-len)))
488 (setq prefix-len (1+ prefix-len)))
489 (unless (zerop prefix-len)
490 (setq beg (+ beg prefix-len))
491 (setq newtext (substring newtext prefix-len))))
492 (let ((suffix-len 0))
493 ;; Don't touch markers in the shared suffix (if any).
494 (while (and (< suffix-len (length newtext))
495 (< beg (- end suffix-len))
496 (eq (char-before (- end suffix-len))
497 (aref newtext (- (length newtext) suffix-len 1))))
498 (setq suffix-len (1+ suffix-len)))
499 (unless (zerop suffix-len)
500 (setq end (- end suffix-len))
501 (setq newtext (substring newtext 0 (- suffix-len)))))
482 (goto-char beg) 502 (goto-char beg)
483 (insert newtext) 503 (insert newtext)
484 (delete-region (point) (+ (point) (- end beg)))) 504 (delete-region (point) (+ (point) (- end beg))))