I came across this today while reviewing something else.
The current signature is this:
CheckOverlayCapabilities(gfx.mojom.AcceleratedWidget widget,
array<ui.ozone.mojom.OverlaySurfaceCandidate> candidates) =>
(gfx.mojom.AcceleratedWidget widget,
array<ui.ozone.mojom.OverlaySurfaceCandidate> candidates,
array<ui.ozone.mojom.OverlayStatus> status);
It's a bit odd to echo |candidate| through IPC when the caller could just make a copy and bind it directly into the return callback if desired.
One other potential issue: it looks like |candidates| and |status| should match in size. But I'm not sure that anything actually enforces that (though I'm not sure if this can lead to actual bugs either)
Comment 1 by rjkroege@chromium.org
, May 25 2018