char: remove chr_free
authorMarc-André Lureau <marcandre.lureau@redhat.com>
Thu, 8 Dec 2016 16:35:01 +0000 (19:35 +0300)
committerMarc-André Lureau <marcandre.lureau@redhat.com>
Tue, 31 Jan 2017 09:01:47 +0000 (13:01 +0400)
Now it uses Object instance_finalize instead.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
include/sysemu/char.h
qemu-char.c

index da0e7dd4946fb830b468a7358f9ab1b0ea89b44c..5e5594f3054cdaf2980c28f927a05fa808fb93ad 100644 (file)
@@ -184,13 +184,6 @@ Chardev *qemu_chr_new_noreplay(const char *label, const char *filename);
  */
 void qemu_chr_delete(Chardev *chr);
 
-/**
- * @qemu_chr_free:
- *
- * Destroy a character backend.
- */
-void qemu_chr_free(Chardev *chr);
-
 /**
  * @qemu_chr_fe_set_echo:
  *
@@ -496,7 +489,6 @@ typedef struct ChardevClass {
     int (*set_msgfds)(Chardev *s, int *fds, int num);
     int (*chr_add_client)(Chardev *chr, int fd);
     int (*chr_wait_connected)(Chardev *chr, Error **errp);
-    void (*chr_free)(Chardev *chr);
     void (*chr_disconnect)(Chardev *chr);
     void (*chr_accept_input)(Chardev *chr);
     void (*chr_set_echo)(Chardev *chr, bool echo);
index 3d0d69099913bb7432c93ef86d4849f690973972..c239418c25c8c815133a207a291d5e6b9da629f3 100644 (file)
@@ -4371,18 +4371,10 @@ void qemu_chr_fe_disconnect(CharBackend *be)
     }
 }
 
-void qemu_chr_free(Chardev *chr)
-{
-    if (CHARDEV_GET_CLASS(chr)->chr_free) {
-        CHARDEV_GET_CLASS(chr)->chr_free(chr);
-    }
-    object_unref(OBJECT(chr));
-}
-
 void qemu_chr_delete(Chardev *chr)
 {
     QTAILQ_REMOVE(&chardevs, chr, next);
-    qemu_chr_free(chr);
+    object_unref(OBJECT(chr));
 }
 
 ChardevInfoList *qmp_query_chardev(Error **errp)