From 538284f5023b36468cfe42137ccd8ea3e985e309 Mon Sep 17 00:00:00 2001 From: "WQY\\qiong" Date: Sat, 29 Apr 2023 17:58:29 +0800 Subject: [PATCH] Add more checking for region api --- api/s33_region.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) 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()