]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
object: add extra sanity checks
authorMarc-André Lureau <marcandre.lureau@redhat.com>
Fri, 10 Jan 2020 15:30:14 +0000 (19:30 +0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 24 Jan 2020 19:59:12 +0000 (20:59 +0100)
Type system checked that children class_size >= parent class_size, but
not instances. Fix that.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200110153039.1379601-2-marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
qom/object.c

index 90155faec14e52d177be402be47d21de5f874bbc..dcb686348b07c0f4ba3c9b19b137e8b25d5ba5e7 100644 (file)
@@ -307,6 +307,7 @@ static void type_initialize(TypeImpl *ti)
         int i;
 
         g_assert(parent->class_size <= ti->class_size);
+        g_assert(parent->instance_size <= ti->instance_size);
         memcpy(ti->class, parent->class, parent->class_size);
         ti->class->interfaces = NULL;
         ti->class->properties = g_hash_table_new_full(