Thomas Huth <th...@redhat.com> writes:

> On 12/10/2022 17.38, Markus Armbruster wrote:
>> When you try to set qtest property "log" while the qtest object is
>> active, the error message blames "insufficient permission":
>> 
>>      $ qemu-system-x86_64 -S -display none -nodefaults -monitor stdio 
>> -chardev socket,id=chrqt0,path=qtest.socket,server=on,wait=off -object 
>> qtest,id=qt0,chardev=chrqt0,log=/dev/null
>>      QEMU 7.1.50 monitor - type 'help' for more information
>>      (qemu) qom-set /objects/qt0 log qtest.log
>>      Error: Insufficient permission to perform this operation
>> 
>> This implies it could work with "sufficient permission".  It can't.
>> Change the error message to:
>> 
>>      Error: Property 'log' can not be set now
>
> Can it be set later? ... if not, that error message is almost as confusing 
> as the original one. Maybe it's better to tell the users *when* they can set 
> the property?

The property cannot be set while the object is "active", i.e. global
@qtest points to it.

Right now, @qtest points to the object from completion with
user_creatable_complete() to unparent.

Completion fails when @qtest already points to another object, i.e. only
one object can be complete at any time.

Since Paolo took the trouble to code an unparent method, I assume
unparent can happen.  I can't tell offhand when.

Help!


Reply via email to