probably time to gut the double buffer stuff