changeset 108403:365134ccde58

Merge from mainline.
author Katsumi Yamaoka <yamaoka@jpl.org>
date Sat, 23 Jan 2010 11:46:15 +0000
parents d3036620c45e (current diff) 5071660bbec4 (diff)
children 369f92442260
files
diffstat 9 files changed, 64 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Fri Jan 22 14:50:35 2010 +0000
+++ b/lisp/ChangeLog	Sat Jan 23 11:46:15 2010 +0000
@@ -1,3 +1,22 @@
+2010-01-23  Michael Albinus  <michael.albinus@gmx.de>
+
+	* net/tramp-smb.el (tramp-smb-conf): New defcustom.
+	(tramp-smb-maybe-open-connection): Use it.
+
+2010-01-22  Michael Albinus  <michael.albinus@gmx.de>
+
+	* net/tramp-imap.el (top): Autoload needed packages.  (Bug#5448)
+
+2010-01-22  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* mail/rmailmm.el (rmail-mime-handle): Don't set the buffer to unibyte
+	just because we see "encoding: 8bit".
+	* mail/rmail.el (rmail-show-message-1): Decode the body's QP into bytes.
+
+2010-01-22  Chong Yidong  <cyd@stupidchicken.com>
+
+	* isearch.el (isearch-allow-scroll): Doc fix (Bug#5446).
+
 2010-01-22  Eli Zaretskii  <eliz@gnu.org>
 
 	* jka-compr.el (jka-compr-load): If load-file is not in
--- a/lisp/isearch.el	Fri Jan 22 14:50:35 2010 +0000
+++ b/lisp/isearch.el	Sat Jan 23 11:46:15 2010 +0000
@@ -1754,7 +1754,10 @@
 (put 'digit-argument 'isearch-scroll t)
 
 (defcustom isearch-allow-scroll nil
-  "If non-nil, scrolling commands are allowed during incremental search."
+  "Whether scrolling is allowed during incremental search.
+If non-nil, scrolling commands can be used in Isearch mode.
+However, the current match will never scroll offscreen.
+If nil, scolling commands will first cancel Isearch mode."
   :type 'boolean
   :group 'isearch)
 
--- a/lisp/mail/mail-utils.el	Fri Jan 22 14:50:35 2010 +0000
+++ b/lisp/mail/mail-utils.el	Sat Jan 23 11:46:15 2010 +0000
@@ -133,6 +133,8 @@
 If UNIBYTE is non-nil, insert converted characters as unibyte.
 That is useful if you are going to character code decoding afterward,
 as Rmail does."
+  ;; FIXME: `unibyte' should always be non-nil, and the iso-latin-1
+  ;; specific handling should be removed (or moved elsewhere and generalized).
   (interactive "r\nP")
   (let (failed)
     (save-match-data
--- a/lisp/mail/rmail.el	Fri Jan 22 14:50:35 2010 +0000
+++ b/lisp/mail/rmail.el	Sat Jan 23 11:46:15 2010 +0000
@@ -2727,7 +2727,8 @@
 	    (insert-buffer-substring mbox-buf body-start end)
 	    (cond
 	     ((string= character-coding "quoted-printable")
-	      (mail-unquote-printable-region (point-min) (point-max)))
+	      (mail-unquote-printable-region (point-min) (point-max)
+                                             nil nil 'unibyte))
 	     ((and (string= character-coding "base64") is-text-message)
 	      (base64-decode-region (point-min) (point-max)))
 	     ((eq character-coding 'uuencode)
--- a/lisp/mail/rmailmm.el	Fri Jan 22 14:50:35 2010 +0000
+++ b/lisp/mail/rmailmm.el	Sat Jan 23 11:46:15 2010 +0000
@@ -361,7 +361,10 @@
 	 (setq content-transfer-encoding nil))
 	((string= content-transfer-encoding "8bit")
 	 ;; FIXME: Is this the correct way?
-	 (set-buffer-multibyte nil)))
+         ;; No, of course not, it just means there's no decoding to do.
+	 ;; (set-buffer-multibyte nil)
+         (setq content-transfer-encoding nil)
+         ))
   ;; Inline stuff requires work.  Attachments are handled by the bulk
   ;; handler.
   (if (string= "inline" (car content-disposition))
--- a/lisp/net/tramp-imap.el	Fri Jan 22 14:50:35 2010 +0000
+++ b/lisp/net/tramp-imap.el	Sat Jan 23 11:46:15 2010 +0000
@@ -55,13 +55,23 @@
 (require 'assoc)
 (require 'tramp)
 (require 'tramp-compat)
-(require 'message)
-(require 'imap-hash)
-(require 'epa)
+
 (autoload 'auth-source-user-or-password "auth-source")
+(autoload 'epg-context-operation "epg")
+(autoload 'epg-context-set-armor "epg")
+(autoload 'epg-context-set-passphrase-callback "epg")
+(autoload 'epg-context-set-progress-callback "epg")
+(autoload 'epg-decrypt-string "epg")
+(autoload 'epg-encrypt-string "epg")
+(autoload 'imap-hash-get "imap-hash")
+(autoload 'imap-hash-make "imap-hash")
+(autoload 'imap-hash-map "imap-hash")
+(autoload 'imap-hash-put "imap-hash")
+(autoload 'imap-hash-rem "imap-hash")
 
 ;; We use the additional header "X-Size" for encoding the size of a file.
-(add-to-list 'imap-hash-headers 'X-Size 'append)
+(eval-after-load "imap-hash"
+  '(add-to-list 'imap-hash-headers 'X-Size 'append))
 
 ;; Define Tramp IMAP method ...
 (defconst tramp-imap-method "imap"
@@ -662,7 +672,8 @@
 		  (read-passwd
 		   (if (eq key-id 'PIN)
 		       "Tramp-IMAP passphrase for PIN: "
-		     (let ((entry (assoc key-id epg-user-id-alist)))
+		     (let ((entry (assoc key-id
+					 (symbol-value 'epg-user-id-alist))))
 		       (if entry
 			   (format "Tramp-IMAP passphrase for %s %s: "
 				   key-id (cdr entry))
--- a/lisp/net/tramp-smb.el	Fri Jan 22 14:50:35 2010 +0000
+++ b/lisp/net/tramp-smb.el	Sat Jan 23 11:46:15 2010 +0000
@@ -61,6 +61,13 @@
   :group 'tramp
   :type 'string)
 
+(defcustom tramp-smb-conf "/dev/null"
+  "*Path of the smb.conf file.
+If it is nil, no smb.conf will be added to the `tramp-smb-program'
+call, letting the SMB client use the default one."
+  :group 'tramp
+  :type '(choice (const nil) (file :must-match t)))
+
 (defvar tramp-smb-version nil
   "*Version string of the SMB client.")
 
@@ -1281,7 +1288,8 @@
 
 	  (when domain (setq args (append args (list "-W" domain))))
 	  (when port   (setq args (append args (list "-p" port))))
-	  (setq args (append args (list "-s" "/dev/null")))
+	  (when tramp-smb-conf
+	    (setq args (append args (list "-s" tramp-smb-conf))))
 
 	  ;; OK, let's go.
 	  (tramp-message
--- a/src/ChangeLog	Fri Jan 22 14:50:35 2010 +0000
+++ b/src/ChangeLog	Sat Jan 23 11:46:15 2010 +0000
@@ -1,3 +1,8 @@
+2010-01-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+	* xdisp.c (draw_glyphs): Update `start' for left_overwritten case
+	as in Emacs 22.
+
 2010-01-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 
 	* lisp.h (make_pure_string): String pointer arg now points to const.
--- a/src/xdisp.c	Fri Jan 22 14:50:35 2010 +0000
+++ b/src/xdisp.c	Sat Jan 23 11:46:15 2010 +0000
@@ -20401,6 +20401,7 @@
 	  j = i;
 	  BUILD_GLYPH_STRINGS (j, start, h, t,
 			       overlap_hl, dummy_x, last_x);
+	  start = i;
 	  compute_overhangs_and_x (t, head->x, 1);
 	  prepend_glyph_string_lists (&head, &tail, h, t);
 	  clip_head = head;
@@ -20450,6 +20451,8 @@
 
 	  BUILD_GLYPH_STRINGS (end, i, h, t,
 			       overlap_hl, x, last_x);
+	  /* Because BUILD_GLYPH_STRINGS updates the first argument,
+	     we don't have `end = i;' here.  */
 	  compute_overhangs_and_x (h, tail->x + tail->width, 0);
 	  append_glyph_string_lists (&head, &tail, h, t);
 	  clip_tail = tail;