[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 03/16] qdict: Make qdict_get_qlist() safe like qdict_
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] [PULL 03/16] qdict: Make qdict_get_qlist() safe like qdict_get_qdict() |
Date: |
Wed, 22 Feb 2017 20:14:45 +0100 |
Commit 89cad9f changed qdict_get_qdict() to return NULL instead of
crash when the key doesn't exist or its value isn't a QDict.
Commit 2d6421a neglected to do the same for qdict_get_qlist().
Correct that, and update the function comments.
qdict_get_obj() is now unused, remove.
Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
---
qobject/qdict.c | 30 +++---------------------------
1 file changed, 3 insertions(+), 27 deletions(-)
diff --git a/qobject/qdict.c b/qobject/qdict.c
index 197b0fb..b0c5364 100644
--- a/qobject/qdict.c
+++ b/qobject/qdict.c
@@ -178,20 +178,6 @@ size_t qdict_size(const QDict *qdict)
}
/**
- * qdict_get_obj(): Get a QObject of a specific type
- */
-static QObject *qdict_get_obj(const QDict *qdict, const char *key, QType type)
-{
- QObject *obj;
-
- obj = qdict_get(qdict, key);
- assert(obj != NULL);
- assert(qobject_type(obj) == type);
-
- return obj;
-}
-
-/**
* qdict_get_double(): Get an number mapped by 'key'
*
* This function assumes that 'key' exists and it stores a
@@ -241,25 +227,15 @@ bool qdict_get_bool(const QDict *qdict, const char *key)
}
/**
- * qdict_get_qlist(): Get the QList mapped by 'key'
- *
- * This function assumes that 'key' exists and it stores a
- * QList object.
- *
- * Return QList mapped by 'key'.
+ * qdict_get_qlist(): If @qdict maps @key to a QList, return it, else NULL.
*/
QList *qdict_get_qlist(const QDict *qdict, const char *key)
{
- return qobject_to_qlist(qdict_get_obj(qdict, key, QTYPE_QLIST));
+ return qobject_to_qlist(qdict_get(qdict, key));
}
/**
- * qdict_get_qdict(): Get the QDict mapped by 'key'
- *
- * This function assumes that 'key' exists and it stores a
- * QDict object.
- *
- * Return QDict mapped by 'key'.
+ * qdict_get_qdict(): If @qdict maps @key to a QDict, return it, else NULL.
*/
QDict *qdict_get_qdict(const QDict *qdict, const char *key)
{
--
2.7.4
- [Qemu-devel] [PULL 00/16] QAPI patches for 2017-02-22, Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 08/16] test-qmp-event: Simplify and tighten event_test_emit(), Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 07/16] libqtest: Clean up qmp_response() a bit, Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 01/16] numa: Flatten simple union NumaOptions, Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 13/16] tests: Don't check qobject_type() before qobject_to_qfloat(), Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 10/16] tests: Don't check qobject_type() before qobject_to_qlist(), Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 16/16] block: Don't bother asserting type of output visitor's output, Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 06/16] check-qjson: Simplify around compare_litqobj_to_qobj(), Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 11/16] tests: Don't check qobject_type() before qobject_to_qstring(), Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 03/16] qdict: Make qdict_get_qlist() safe like qdict_get_qdict(),
Markus Armbruster <=
- [Qemu-devel] [PULL 02/16] net: Flatten simple union NetLegacyOptions, Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 04/16] check-qdict: Simplify qdict_crumple_test_recursive(), Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 05/16] check-qdict: Tighten qdict_crumple_test_recursive() some, Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 15/16] monitor: Clean up handle_hmp_command() a bit, Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 12/16] tests: Don't check qobject_type() before qobject_to_qint(), Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 14/16] tests: Don't check qobject_type() before qobject_to_qbool(), Markus Armbruster, 2017/02/22
- [Qemu-devel] [PULL 09/16] Don't check qobject_type() before qobject_to_qdict(), Markus Armbruster, 2017/02/22
- Re: [Qemu-devel] [PULL 00/16] QAPI patches for 2017-02-22, Peter Maydell, 2017/02/24