#!/bin/sh

TRYFOX="/usr/bin/firefox /usr/X11R6/bin/firefox /usr/local/bin/firefox
        /usr/pkg/bin/firefox"

FIREFOX=false
for f in $TRYFOX; do
   if [ -e "$f" ]; then
	FIREFOX="$f"
	break
   fi
done

$FIREFOX -a firefox -remote 'ping()' >/dev/null 2>&1
PING_STATUS=$?
if [ "${PING_STATUS}" -eq 2 ]; then
	# no firefox running. start one.
# Some weird buggy interaction with emacs' shell-command happens here.
#    echo "trying a new firefox (I am $$)..." >> /tmp/flog
	(($FIREFOX "$@"&) 2>&1 >/dev/null </dev/null) &
else
	# firefox running, use it.
	exec $FIREFOX "$@"
fi
