static void nv10_context_destroy(struct gl_context *ctx) { struct nouveau_context *nctx = to_nouveau_context(ctx); nv04_surface_takedown(ctx); nv10_swtnl_destroy(ctx); nv10_vbo_destroy(ctx); nouveau_object_del(&nctx->hw.eng3d); nouveau_context_deinit(ctx); free(ctx); }
static void nv04_context_destroy(struct gl_context *ctx) { struct nouveau_context *nctx = to_nouveau_context(ctx); nv04_surface_takedown(ctx); nv04_render_destroy(ctx); nouveau_surface_ref(NULL, &to_nv04_context(ctx)->dummy_texture); nouveau_object_del(&nctx->hw.eng3d); nouveau_object_del(&nctx->hw.eng3dm); nouveau_object_del(&nctx->hw.surf3d); nouveau_context_deinit(ctx); FREE(ctx); }