diff --git a/qom/object.c b/qom/object.c index 20f57135cd..467795189c 100644 --- a/qom/object.c +++ b/qom/object.c @@ -1136,18 +1136,15 @@ char *object_property_get_str(Object *obj, const char *name, Error **errp) { QObject *ret = object_property_get_qobject(obj, name, errp); - QString *qstring; char *retval; if (!ret) { return NULL; } - qstring = qobject_to(QString, ret); - if (!qstring) { + + retval = g_strdup(qobject_get_try_str(ret)); + if (!retval) { error_setg(errp, QERR_INVALID_PARAMETER_TYPE, name, "string"); - retval = NULL; - } else { - retval = g_strdup(qstring_get_str(qstring)); } qobject_decref(ret);