[Spice-devel] [PATCH v3 04/11] Rephrase assertion section
Christophe de Dinechin
cdupontd at redhat.com
Tue Feb 13 13:40:38 UTC 2018
> On 13 Feb 2018, at 14:39, Frediano Ziglio <fziglio at redhat.com> wrote:
>
>>>
>>> On 12 Feb 2018, at 17:58, Frediano Ziglio <fziglio at redhat.com> wrote:
>>>
>>> In SPICE, as in Glib, ERROR is more "strong" than CRITICAL
>>> (I don't know where this came, even in Solaris CRITICAL is more
>>> strong like Linux, maybe an initial mistake).
>>> By default CRITICAL is fatal (it calls abort) so ERROR is too.
>>
>> I’ve not tested with the agent, but I know that for spicy, I regularly get
>> “CRITICAL” about assertions without an abort:
>>
>> (spicy:53020): GLib-GObject-CRITICAL **: g_object_get: assertion 'G_IS_OBJECT
>> (object)' failed
>> (spicy:53020): GLib-GObject-CRITICAL **: g_object_unref: assertion
>> 'G_IS_OBJECT (object)' failed
>>
>> If the desired behavior is an abort, we are not configuring it properly.
>>
>>
>> Christophe
>>
>
> But this is a CRITICAL in spicy, not a ERROR in the server.
> By default g_critical is not fatal, spice_critical yes.
> Both g_error and spice_error are fatal.
My point was that an assertion failure was not aborting.
Do you feel that it’s logical and consistent? For me, it’s remarkably confusing ;-)
Christophe
>
> Frediano
>
>>>
>>>>> I agree, asserts should not be used as needed runtime checks.
>>>>
>>>> I’ll add that to the next writeup.
More information about the Spice-devel
mailing list