glBindBufferARB and following calls fail silently on NVIDIA
I'm debugging an application (old code, which is why it's using glBindBufferARB) which occasionally fails on NVIDIA hardware but runs well on AMD. Most of the code uses glBegin/glEnd rendering but there's a certain part that uses buffers, and that part fails, although not always (I have a repro with specific steps which fails most of the time). My testing shows that when the code fails glBindBufferARB fails and when I put glGetIntegerv(GL_ARRAY_BUFFER_BINDING_ARB, &buf) after it, that also does nothing (i.e., buf stays the same as before the call). glGetError returns 0.
Has anyone encountered this kind of problem?
(By the way I'm using drivers 320.18 and a GeForce 9600, but this also happened with previous drivers and other cards.)
Edit: I think it's a case of the context being current on another thread.