+2002-05-14  Yuuichi Teranishi  <teranisi@gohome.org>
+
+       * wl-vars.el (wl-invalid-character-message): New user option.
+
+       * wl-util.el (wl-set-string-width): If truncated string-width is
+       larger than specified width, use `wl-invalid-character-message'.
+
 2002-05-14  KAMO Tomoyuki  <kamo@i-manage.co.jp>
 
        * wl-summary.el (wl-summary-prefetch-msg): 
 
        (setq string (truncate-string-to-width string (abs width))))
     (if (= (string-width string) (abs width))
        string
-      (let ((paddings (make-string
-                      (max 0 (- (abs width) (string-width string)))
-                      (or padding ?\ ))))
-       (if (< width 0)
-           (concat paddings string)
-         (concat string paddings)))))
+      (if (< (abs width) (string-width string))
+         (wl-set-string-width width
+                              wl-invalid-character-message
+                              padding)
+       (let ((paddings (make-string
+                        (max 0 (- (abs width) (string-width string)))
+                        (or padding ?\ ))))
+         (if (< width 0)
+             (concat paddings string)
+           (concat string paddings))))))
    (t
     (elmo-set-work-buf
      (elmo-set-buffer-multibyte default-enable-multibyte-characters)
 
                (const :tag "bitmap (using BITMAP-MULE)" bitmap))
   :group 'wl-pref)
 
+(defcustom wl-invalid-character-message "(WL:Invalid characters.)"
+  "*A string displayed when invalid character exists."
+  :type 'string
+  :group 'wl-pref)
+
 ;;; Internal variables
 (defvar wl-init nil)