Subject: bug#11385: 24.0.96; `image-dired-create-thumb': (file-error "Setting current directory" "no such file or directory" "$HOME/")

From: Eli Zaretskii <[email-masked]>
Date: Sat, 12 May 2012 19:29:27 +0300

> From: "Drew Adams" <[email-masked]>
> Date: Sat, 12 May 2012 09:02:42 -0700
> Cc: [email-masked]
> 
> > I don't see the problem.  Feel free to keep debugging.
> 
> The question is whether the string passed to `call-process' is legitimate, and
> if so, why it raises an error.  This is the string:
> 
> * call-process("C:/cygwin/bin/bash.exe" nil nil nil "-c" #("convert -size
> 100x100 \".emacs-bmk-bmenu-image-file-icon.png\" -resize \"100x100>\" -strip
> jpeg:\"c:/.emacs.d/image-dired/.emacs-bmk-bmenu-image-file-icon_296198de66b39419
> 757fa05281dd3766.thumb.png\"" 23 59 (mouse-face highlight)))

It seems legitimate, although the \"100x100>\" part looks suspicious
(what is that '>' character doing there?).  But I don't think this is
the problem.

> Debugger entered--Lisp error:
> (file-error "Setting current directory" "no such file or directory"
>  "c:/drews-lisp-20/$HOME/")

It's the $HOME part that is the problem.  Can you find out where
exactly inside image-dired-thumb-name does it come from?  The $HOME
part was supposed to be expanded, but instead it is being treated
literally, and the current directory is prepended to it.  The question
is, what code produces that.