I am Sorry.
It was my mistake :
I had one glPushMatrix in excess elsewhere in the code. So at the end of each frame, I had a matrix forgotten in the stack.
and at the 32nd frame, the matrix poped no longer corresponded to the one immediately pushed.
I guess openGL should signal the overflow in the matrix stack by a crash or a warning, rather than poping an incorrect matrix.
Thank you for your answer and your time