From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54994) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c9JkZ-0000qm-1A for qemu-devel@nongnu.org; Tue, 22 Nov 2016 17:41:15 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c9JkX-0004Vh-Nd for qemu-devel@nongnu.org; Tue, 22 Nov 2016 17:41:15 -0500 Received: from mx1.redhat.com ([209.132.183.28]:44862) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1c9JkX-0004Us-CP for qemu-devel@nongnu.org; Tue, 22 Nov 2016 17:41:13 -0500 References: <673F175E-AF65-4F4F-9895-C7335A36AC29@gmail.com> <8b136de6-490a-d194-b7a6-eabfb87daf2c@redhat.com> <16AF327F-E1FE-4F2E-9919-A474276474FF@gmail.com> <182f25fb-98bd-73db-62f3-ff18b30a49cd@redhat.com> From: Eric Blake Message-ID: <0f6563b9-5e6a-7a7d-e401-575cbc6ad6f4@redhat.com> Date: Tue, 22 Nov 2016 16:41:11 -0600 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="xOkaL857UAMSCkPRN6lOhwXPd3g8xgQ36" Subject: Re: [Qemu-devel] qobject/qjson.c:69: failed assertion `obj != NULL' List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: G 3 Cc: Paolo Bonzini , Markus Armbruster , qemu-devel qemu-devel This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --xOkaL857UAMSCkPRN6lOhwXPd3g8xgQ36 From: Eric Blake To: G 3 Cc: Paolo Bonzini , Markus Armbruster , qemu-devel qemu-devel Message-ID: <0f6563b9-5e6a-7a7d-e401-575cbc6ad6f4@redhat.com> Subject: Re: [Qemu-devel] qobject/qjson.c:69: failed assertion `obj != NULL' References: <673F175E-AF65-4F4F-9895-C7335A36AC29@gmail.com> <8b136de6-490a-d194-b7a6-eabfb87daf2c@redhat.com> <16AF327F-E1FE-4F2E-9919-A474276474FF@gmail.com> <182f25fb-98bd-73db-62f3-ff18b30a49cd@redhat.com> In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 11/22/2016 04:22 PM, G 3 wrote: >> On the other hand, timestamp_put() (which now lives in qapi/qmp-event.= c, >> rather than monitor.c) is still using qobject_from_jsonf() with PRId64= >> in current git master. If you don't want to hack the JSON parser (and= I >> recommend that you don't), the alternative is to get rid of that >> function call and replace it with an open-coded construction of a QDic= t >> with manual population of its two members. It's hard to argue that th= e >> complexity of maintaining our pseudo-printf JSON parser for constructi= ng >> a QObject with one line is worth the effort compared to the three or >> four lines to construct the same QObject by hand. >=20 > I would just like to note for anyone else who might face this problem i= n > the > future that replacing %PRId64 with %lld fixed the problem. I made the > replacement in timestamp_put(). It works for you, but not for platforms where uint64_t is 'long int', such that the compiler would complain if you don't use '%ld'. I'm still working on my patches, but will soon post three minimal patches for 2.8 plus a longer series of patches for 2.9 that cleans up the mess for all platforms. --=20 Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org --xOkaL857UAMSCkPRN6lOhwXPd3g8xgQ36 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBCAAGBQJYNMmHAAoJEKeha0olJ0Nqf5wH/1NNN8eXH8c5mrDrjKdA4Z4N V+e4uUmfbTkvtgAGu8xYdb0pWI+SUYAezBlmqkzX6HKxafehFAxurGBxkrlxSadV 91k8RZgIiTUVcW6C0oQnvNK4aW29lbknKrO9A8UIavraMtTyHJdNz0DVlkGSxhdy 5V66Ja1UwxL265QmHkZGkcBafcgNE65t3hVJYJ09pIQI1rp44PoxGLrpJeXCTnRc 4yA/6YJ/prv8laZKgOVZjPzCsuRlhkY9sjACeAYMdzJweh0uuufSCXC+0OzLlvVo hDQu9Lqp/oc5Mj3u7ztCTfHDB3SGmGo8x7sgkd+z+ZUEq3FZTsOIMc4ZpNGo7Qc= =TIWI -----END PGP SIGNATURE----- --xOkaL857UAMSCkPRN6lOhwXPd3g8xgQ36--