mirror of
https://github.com/qdrant/qdrant.git
synced 2026-08-07 02:20:55 -05:00
`impl Validate for grpc::FieldCondition` only checked that at least one condition field was set; it never validated the contents of a geo polygon. A `FieldCondition` carrying a malformed `geo_polygon` (empty exterior, fewer than 4 points, or an unclosed exterior/interior ring) therefore passed validation, and the invalid shape later reached the geo index and panicked. Recurse into the polygon's existing validator (`geo_polygon.validate()?`), which already rejects these shapes (it is covered by `test_geo_polygon`), so the request is rejected with a clean validation error instead. Includes a regression test asserting a FieldCondition with an empty polygon exterior is rejected while a well-formed polygon still passes.