diff --git a/api/s33_region.py b/api/s33_region.py index 7ef0f1e..9d90e20 100644 --- a/api/s33_region.py +++ b/api/s33_region.py @@ -32,7 +32,8 @@ def _set_region(name: str, cs: ChangeSet) -> DbChangeSet: def set_region(name: str, cs: ChangeSet) -> ChangeSet: if 'id' not in cs.operations[0] or 'boundary' not in cs.operations[0]: return ChangeSet() - if len(cs.operations[0]['boundary']) < 3: + b = cs.operations[0]['boundary'] + if len(b) < 4 or b[0] != b[-1]: return ChangeSet() if get_region(name, cs.operations[0]['id']) == {}: return ChangeSet() @@ -54,7 +55,8 @@ def _add_region(name: str, cs: ChangeSet) -> DbChangeSet: def add_region(name: str, cs: ChangeSet) -> ChangeSet: if 'id' not in cs.operations[0] or 'boundary' not in cs.operations[0]: return ChangeSet() - if len(cs.operations[0]['boundary']) < 3: + b = cs.operations[0]['boundary'] + if len(b) < 4 or b[0] != b[-1]: return ChangeSet() if get_region(name, cs.operations[0]['id']) != {}: return ChangeSet()