diff options
| author | David Hildenbrand <david@redhat.com> | 2018-11-21 17:44:15 +0100 |
|---|---|---|
| committer | Markus Armbruster <armbru@redhat.com> | 2018-12-13 19:10:06 +0100 |
| commit | 4b69d4c3d7c133ebc9393ef3f86ce38831921cb6 (patch) | |
| tree | 3ea8c1796daf48149454bbe2eb4fab9a19b07284 /tests/test-string-input-visitor.c | |
| parent | af02f4c5179675ad4e26b17ba26694a8fcde17fa (diff) | |
| download | focaccia-qemu-4b69d4c3d7c133ebc9393ef3f86ce38831921cb6.tar.gz focaccia-qemu-4b69d4c3d7c133ebc9393ef3f86ce38831921cb6.zip | |
qapi: Fix string-input-visitor to reject NaN and infinities
The string-input-visitor happily accepts NaN and infinities when parsing numbers (doubles). They shouldn't. Fix that. Also, add two test cases, testing if "NaN" and "inf" is properly rejected. Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: David Hildenbrand <david@redhat.com> Message-Id: <20181121164421.20780-4-david@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com>
Diffstat (limited to 'tests/test-string-input-visitor.c')
| -rw-r--r-- | tests/test-string-input-visitor.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/test-string-input-visitor.c b/tests/test-string-input-visitor.c index 88e0e1aa9a..1efba06948 100644 --- a/tests/test-string-input-visitor.c +++ b/tests/test-string-input-visitor.c @@ -252,6 +252,19 @@ static void test_visitor_in_number(TestInputVisitorData *data, visit_type_number(v, NULL, &res, &err); g_assert(!err); g_assert_cmpfloat(res, ==, value); + + /* NaN and infinity has to be rejected */ + + v = visitor_input_test_init(data, "NaN"); + + visit_type_number(v, NULL, &res, &err); + error_free_or_abort(&err); + + v = visitor_input_test_init(data, "inf"); + + visit_type_number(v, NULL, &res, &err); + error_free_or_abort(&err); + } static void test_visitor_in_string(TestInputVisitorData *data, |