On 02/26/2017 03:43 PM, Markus Armbruster wrote:
> Commit 240f64b made all qobject input visitors created outside tests
> strict, except for the one in object_property_set_qobject(). That one
> was left behind only because Eric couldn't spare the time to figure
> out whether making it strict would break anything, with a TODO
> comment. Time to resolve it.
>
> Strict makes a difference only for otherwise successful visits of QAPI
> structs or unions. Let's examine what the callers of
> object_property_set_qobject() visit:
>
> * object_property_set_str(), object_property_set_bool(),
> object_property_set_int() visit a QString, QBool, QInt,
> respectively. Strictness can't matter.
>
> * qmp_qom_set visits its @value argument. Comes straight from QMP and
> can be anything ('any' in the QAPI schema). Strictness matters when
> the property's set() method visits a struct or union QAPI type.
>
> No such methods exist, thus switching to strict can't break
> anything.
>
> If we acquire such methods in the future, we'll *want* the visitor
> to be strict, so that unexpected members get rejected as they should
> be.
>
> Switch to strict.
>
> Signed-off-by: Markus Armbruster <[email protected]>
> ---
> qom/qom-qobject.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)Reviewed-by: Eric Blake <[email protected]> -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
