# Find MIME type string, using mimetypeproc if configured with it.
MIMETYPEPROC=`mhparam mimetypeproc`
content_type_string() {
-echo $MIMETYPEPROC; $MIMETYPEPROC $1 # temporary, for debugging on OpenBSD
-ls -l dead.letter; /bin/rm -f dead.letter # temporary, for debugging on OpenBSD
-
if test -z "$MIMETYPEPROC"; then
echo "text/plain; name=\"`basename $1`\"; charset=\"us-ascii\""
else
# 1) Excise leading filename followed by : and any whitespace.
- # 2) Wrap charset value in double quotes. Assume that it isn't already.
+ # 2) Insert semicolon if there isn't one before the first space.
+ # OpenBSD file --mime spits out things like "text/plain charset=...".
+ # 3) Wrap charset value in double quotes. Assume that it isn't already.
printf "%s %s%s" \
- `$MIMETYPEPROC $1 | sed -e 's/.*: *//' -e 's/\(charset=\)\(.*\)/\1"\2"/'`\
- "; name=\"`basename $1`\""
+ `$MIMETYPEPROC $1 | sed -e 's/.*: *//' -e 's/\([^;]\) /\1; /' \
+ -e 's/\(charset=\)\(.*\)/\1"\2"/'` "; name=\"`basename $1`\""
fi
}