Skip to content

color: forbid get_information for client-created

Pekka Paalanen requested to merge pq/wayland-protocols:mr/infoallowed into color

Requests wp_color_management_output_v1.get_image_description and wp_color_management_surface_v1.get_preferred already explicitly document that get_information is allowed. Finish the definitions by adding notes that image description objects created from client's data do not allow get_information, and define the protocol error for the violation.

The principal reason to forbid get_information is the Wayland design paradigm: if a client sets some data, it is up to the client to save that data too if it needs it later. Asking the compositor for what the client already knew is just useless overhead.

The practical reason to forbid get_information, especially for the ICC factory, is to not require the compositor to store exactly the same data the client gave it. If a compositor uses an internal representation of a client given ICC file, then the compositor should not need to keep also a copy of the ICC file around just in case the client might ask for it.

This also avoids questions around whether a compositor should return exactly the same data a client gave, or is a similar representation enough.

Merge request reports