char-udp: convert to finalize
authorMarc-André Lureau <marcandre.lureau@redhat.com>
Thu, 8 Dec 2016 13:50:26 +0000 (16:50 +0300)
committerMarc-André Lureau <marcandre.lureau@redhat.com>
Tue, 31 Jan 2017 09:01:46 +0000 (13:01 +0400)
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
qemu-char.c

index 91ca4cb0832746e9bb3e7e0acaa38b0e982c4d1f..1c4fcf3a6e3e7cad4c1df19c70e0aa5fe23db298 100644 (file)
@@ -2779,9 +2779,10 @@ static void udp_chr_update_read_handler(Chardev *chr,
     }
 }
 
-static void udp_chr_free(Chardev *chr)
+static void char_udp_finalize(Object *obj)
 {
-    UdpChardev *s = UDP_CHARDEV(chr);
+    Chardev *chr = CHARDEV(obj);
+    UdpChardev *s = UDP_CHARDEV(obj);
 
     remove_fd_in_watch(chr);
     if (s->ioc) {
@@ -4975,13 +4976,13 @@ static void char_udp_class_init(ObjectClass *oc, void *data)
     cc->open = qmp_chardev_open_udp;
     cc->chr_write = udp_chr_write;
     cc->chr_update_read_handler = udp_chr_update_read_handler;
-    cc->chr_free = udp_chr_free;
 }
 
 static const TypeInfo char_udp_type_info = {
     .name = TYPE_CHARDEV_UDP,
     .parent = TYPE_CHARDEV,
     .instance_size = sizeof(UdpChardev),
+    .instance_finalize = char_udp_finalize,
     .class_init = char_udp_class_init,
 };