Ejemplo n.º 1
0
/**
 * Deallocate/free a vertex/pixel buffer object.
 * Called via glDeleteBuffersARB().
 */
static void intel_bufferobj_free( GLcontext *ctx,
                                  struct gl_buffer_object *obj )
{
    struct intel_context *intel = intel_context(ctx);
    struct intel_buffer_object *intel_obj = intel_buffer_object(obj);

    assert(intel_obj);

    if (intel_obj->buffer)
        bmDeleteBuffers( intel->bm, 1, &intel_obj->buffer );

    _mesa_free(intel_obj);
}
Ejemplo n.º 2
0
void intel_region_release( struct intel_context *intel,
			   struct intel_region **region )
{
   if (!*region)
      return;

   DBG("%s %d\n", __FUNCTION__, (*region)->refcount-1);
   
   if (--(*region)->refcount == 0) {
      assert((*region)->map_refcount == 0);
      bmDeleteBuffers(intel, 1, &(*region)->buffer);
      free(*region);
   }
   *region = NULL;
}