[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 35/37] qapi: Fix to .check() empty structs just once
From: |
Markus Armbruster |
Subject: |
[PULL 35/37] qapi: Fix to .check() empty structs just once |
Date: |
Tue, 24 Sep 2019 14:33:32 +0200 |
QAPISchemaObjectType.check() does nothing for types that have been
checked already. Except the "has been checked" predicate is broken
for empty types: self.members is [] then, which isn't true. The bug
is harmless, but fix it anyway: use self.member is not None instead.
Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
---
scripts/qapi/common.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/qapi/common.py b/scripts/qapi/common.py
index 7e79c42b6a..e2c87d1349 100644
--- a/scripts/qapi/common.py
+++ b/scripts/qapi/common.py
@@ -1406,7 +1406,7 @@ class QAPISchemaObjectType(QAPISchemaType):
if self.members is False: # check for cycles
raise QAPISemError(self.info,
"Object %s contains itself" % self.name)
- if self.members:
+ if self.members is not None: # already checked
return
self.members = False # mark as being checked
seen = OrderedDict()
--
2.21.0
- [PULL 00/37] QAPI patches for 2019-09-24, Markus Armbruster, 2019/09/24
- [PULL 02/37] make check-unit: use after free in test-opts-visitor, Markus Armbruster, 2019/09/24
- [PULL 04/37] qapi: Drop check_type()'s redundant parameter @allow_optional, Markus Armbruster, 2019/09/24
- [PULL 01/37] qapi: Make visit_next_list()'s comment less confusing, Markus Armbruster, 2019/09/24
- [PULL 07/37] tests/qapi-schema: Demonstrate bad reporting of funny characters, Markus Armbruster, 2019/09/24
- [PULL 05/37] qapi: Drop support for boxed alternate arguments, Markus Armbruster, 2019/09/24
- [PULL 06/37] docs/devel/qapi-code-gen: Minor specification fixes, Markus Armbruster, 2019/09/24
- [PULL 11/37] qapi: Permit alternates with just one branch, Markus Armbruster, 2019/09/24
- [PULL 19/37] tests/qapi-schema: Cover unknown pragma, Markus Armbruster, 2019/09/24
- [PULL 29/37] qapi: Reject blank 'if' conditions in addition to empty ones, Markus Armbruster, 2019/09/24
- [PULL 35/37] qapi: Fix to .check() empty structs just once,
Markus Armbruster <=
- [PULL 33/37] qapi: Clean up around check_known_keys(), Markus Armbruster, 2019/09/24
- [PULL 32/37] qapi: Simplify check_keys(), Markus Armbruster, 2019/09/24
- [PULL 34/37] qapi: Delete useless check_exprs() code for simple union kind, Markus Armbruster, 2019/09/24
- [PULL 27/37] qapi: Remove null from schema language, Markus Armbruster, 2019/09/24
- [PULL 13/37] qapi: Adjust frontend errors to say enum value, not member, Markus Armbruster, 2019/09/24
- [PULL 26/37] qapi: Improve reporting of lexical errors, Markus Armbruster, 2019/09/24
- [PULL 10/37] qapi: Permit 'boxed' with empty type, Markus Armbruster, 2019/09/24
- [PULL 37/37] qapi: Assert .visit() and .check_clash() run only after .check(), Markus Armbruster, 2019/09/24
- [PULL 22/37] tests/qapi-schema: Demonstrate broken discriminator errors, Markus Armbruster, 2019/09/24
- [PULL 03/37] scripts/git.orderfile: Match QAPI schema more precisely, Markus Armbruster, 2019/09/24