web commit by http://ethan.betacantrips.com/: revised patch (completely untested...