fix ringer threading logic