Subject: bug#6690: 24.0.50; tmm-get-keymap is broken

From: "Drew Adams" <[email-masked]>
Date: Wed, 21 Jul 2010 08:12:02 -0700

emacs -Q
 
In several of the `cond' branches the variable `str' is not defined, so
it is nil from the `let' default initialization.
 
Then this code raises an error "Wrong type argument: stringp, nil",
since `str' is not a string:
 
(unless (eq km 'ignore)
          (let ((binding (where-is-internal km nil t)))
            (when binding
              (setq binding (key-description binding))
              ;; Try to align the keybindings.
              (let ((colwidth (min 30 (- (/ (window-width) 2) 10))))
 
;; STR is nil - so cannot use `string-width' or `concat'.
 
                (setq str
                      (concat str
                              (make-string (max 2 (- colwidth
                                                     (string-width str)
                                                     (string-width binding)))
                                           ?\s)
                              binding))))))

In GNU Emacs 24.0.50.1 (i386-mingw-nt5.1.2600)
 of 2010-07-19 on 3249CTO
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (4.4) --no-opt --cflags -Ic:/xpm/include'