My Ryobi table saw has done the same thing twice now. The little rocker contacts inside seem to get dirty and short out, resulting in an almost welded 'always on' state. I've taken the switch apart twice, cleaned the contacts, blew everything out and put it back together, works fine.
It's always a little hairy when you go to shut it off and it won't die, though. I think most of my Ryobi tools use the same type of switch, and I've not had any other problems, but the potential is there. I'll eventually just rewire something generic and stable into it before I buy a new OEM switch, but for now it's been repairable.
From my old RC car racing days, I know there's a greasy goo that you can put in there to retard arcing due to FOD, but I'm too lazy to go through my boxes and get some out. We used to use it on our mechanical speed control rheostat contacts back before they came up with ESC's.