schlock global variable needs to be volatile