force to show the results after storing in displaylist??

I have a problem to see the results of the object I´m painting…

I create a new object everytime I re-calculate my object and store the resulting object in a displaylist so that one can repaint it fast when I want to move my object… The thing is that it doesn´t repaint the object when I store it in a displaylist. But if I run the procedure twice, it does work fine… what´s wrong???


void CResultCanvas::UpdateScalp()
// create the scalp displaylist, overwrite the old one, data from m_pScalpMesh
m_pBody = new CBody3D(m_pScalpMesh->m_pMesh,2); //polygon=2 => quadrats
delete m_pBody; // destroy the body, don´t needed when stored in displaylist
m_pBody = NULL;
// update the screen