On 11/24/2016 05:00 AM, Markus Armbruster wrote: > Eric Blake <[email protected]> writes: >
>> + /* Put -1 to indicate failure of getting host time */
>> + obj = qobject_from_jsonf("{ 'seconds': %lld, 'microseconds': %lld }",
>> + err < 0 ? -1LL : tv.tv_sec,
>> + err < 0 ? -1LL : tv.tv_usec);
>> qdict_put_obj(qdict, "timestamp", obj);
>> }
>
> The ternaries must both yield long long for this to work. They will,
> unless their last operand's rank is greater than long long's, or their
> last operand is unsigned long long. The latter case should be harmless
> in practice. The former case would be weird. Hmm.
>
> I think it's best to be a bit more explicit here. Let's cast the last
> operands to long long, or use long long variables. Your choice.
I think I favor the cast, as in:
err < 0 ? -1LL : (long long) tv.tv_sec
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
