cairoSurfaceFinish: cairoSurfaceFinish
Description
This function finishes the surface and drops all references to
external resources. For example, for the Xlib backend it means
that cairo will no longer access the drawable, which can be freed.
After calling cairoSurfaceFinish
the only valid operations on a
surface are getting and setting user, referencing and
destroying, and flushing and finishing it.
Further drawing to the surface will not affect the
surface but will instead trigger a CAIRO_STATUS_SURFACE_FINISHED
error.Usage
cairoSurfaceFinish(surface)
Details
When the last call to cairoSurfaceDestroy
decreases the
reference count to zero, cairo will call cairoSurfaceFinish
if
it hasn't been called already, before freeing the resources
associated with the surface.