pass actual drawable geometry to cairo_xlib_surface_create
ref resources in pp_resource_acquire() and unref in pp_resource_release()

resource could get freed while acquired, which leads to memory corruption.
handle_graphics_expose_event: initialize struct d fields to zero