I am trying to create a bitmap from an OSMesaContext.  After the scene is drawn, the buffer sent into OSMesaMakeCurrent has only the clear color, none of the scene data.  Lighting has been previously set up, display size is 1280x1067.  The scene is visible when rendered to a window.  Any ideas what is wrong?

ctx = OSMesaCreateContext(GL_RGBA, NULL);
Assert(ctx != pNull, "OSMesaCreateContext failed!");

// allocate the image buffer
_pBitmapBits = malloc(_pDisplay->GetWidth() * _pDisplay->GetHeight() * 4 * sizeof(GLubyte));
Assert(_pBitmapBits != pNull, "Alloc image buffer failed!");

// Bind the buffer to the context and make it current
if (!OSMesaMakeCurrent(ctx, _pBitmapBits, GL_UNSIGNED_BYTE, _pDisplay->GetWidth(), _pDisplay->GetHeight()))
{
        Assert(FALSE, "OSMesaMakeCurrent failed!");
}

GLUquadricObj *pObj = gluNewQuadric();          // Get a Quadric off the stack
int     slices = 20, stacks = 20, radius = 100;

glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-2.5, 2.5, -2.5, 2.5, -10.0, 10.0);
glMatrixMode(GL_MODELVIEW);

glClearColor(0, 255, 0);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

glPushMatrix();
glTranslatef(-100.0, 50.0, 0.0);
glColor3ub((GLubyte)(255), (GLubyte)(0), (GLubyte)(0));
gluSphere(pObj, radius, slices, stacks);        // Draw the sphere,
glPopMatrix();

// Free the Quadric
gluDeleteQuadric(pObj);                                        
// free the image buffer
free(_pBitmapBits);
// destroy the context
OSMesaDestroyContext(ctx);