static void vrend_destroy_so_target(struct vrend_so_target *target)
{
   vrend_resource_reference(&target->buffer, NULL);
   free(target);
}

The product does not release a resource after its effective lifetime has ended, i.e., after the resource is no longer needed.