However, setlocale(LC_ALL, "") does the trick... only in a standalone app.
When running as daemon LC_ALL is
set by Suse to POSIX (Fedora and others do it as well) and any call to
setlocale() from within the daemon code results either in NULL or complete
garbage and changes nothing.

The only way I could fix the locale problem is having extended the startup
script for the mediatomb service by this part:

. /etc/sysconfig/language

locale_vars=" \
LANG \
LC_CTYPE \
LC_NUMERIC \
LC_TIME \
LC_COLLATE \
LC_MONETARY \
LC_MESSAGES \
LC_PAPER \
LC_NAME \
LC_ADDRESS \
LC_TELEPHONE \
LC_MEASUREMENT \
LC_IDENTIFICATION \
LC_ALL"

unset LC_ALL
for tmplc in $locale_vars
do
eval tmpval="\$RC_$tmplc"
if test -n "$tmpval"; then
eval $tmplc="\$RC_$tmplc"
export $tmplc
fi
done
unset tmplc tmpval