--- trunk/core/include/mozilla.sminc 2009/07/12 16:18:50 2860 +++ trunk/core/include/mozilla.sminc 2009/07/12 22:10:49 2881 @@ -69,10 +69,10 @@ msetpref() { - : ${MOZILLA_PREF_CONFIG="magellan.js"} - : ${MOZILLA_PREF_PATH="/usr/$(mlibdir)/mozilla-firefox/defaults/pref"} - local pref - local value + : ${MOZILLA_PREF_CONFIG="01-magellan.js"} + : ${MOZILLA_PREF_PATH="/usr/$(mlibdir)/${PNAME}/defaults/pref"} + local pref="$1" + local value="$2" [[ -z ${pref} ]] && die "msetpref(): no \$pref given" @@ -83,9 +83,28 @@ else # write a pref value [[ -z ${value} ]] && die "msetpref(): no \$value given" + + # handle escaped strings: + + # check if value is an integer -> no escaping + #if printf "%d" ${value} > /dev/null 2>&1 + # the better way (only use one! bracket!!) + if [ "${value}" -eq "${value}" ] > /dev/null 2>&1 + then + value="${value}" + + # check for "false" or "true" -> no escaping + elif [[ ${value} = false ]] || [[ ${value} = true ]] + then + value="${value}" + + # all other values needs escaping + else + value="\"${value}\"" + fi # eg: # pref("general.useragent.vendor","Magellan-Linux"); - echo "pref(\"${pref}\",\"${value}\");" >> ${BINDIR}/${MOZILLA_PREF_PATH}/${MOZILLA_PREF_CONFIG} || die + echo "pref(\"${pref}\", ${value});" >> ${BINDIR}/${MOZILLA_PREF_PATH}/${MOZILLA_PREF_CONFIG} || die fi }