fix a dumb race condition

we could get into a state where we were allocating two buffers in a row
if the next fetch for the draw was in-flight