When called on an unrealized chardev (e.g. from
qmp_qom_list_properties), s->addr is NULL. Return an error instead of
assert().
Fixes: 123676e9894f ("char-socket: add 'addr' property")
Signed-off-by: Marc-André Lureau <[email protected]>
---
chardev/char-socket.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/chardev/char-socket.c b/chardev/char-socket.c
index e064b105c50..b629575fcf8 100644
--- a/chardev/char-socket.c
+++ b/chardev/char-socket.c
@@ -1529,6 +1529,10 @@ char_socket_get_addr(Object *obj, Visitor *v, const char
*name,
{
SocketChardev *s = SOCKET_CHARDEV(obj);
+ if (!s->addr) {
+ error_setg(errp, "socket not connected");
+ return;
+ }
visit_type_SocketAddress(v, name, &s->addr, errp);
}
--
2.54.0