Ticket #234 (closed defect: fixed)
Intersection Crashes On Multipolygons With Empty Holes
| Reported by: | slambright | Owned by: | strk |
|---|---|---|---|
| Priority: | minor | Milestone: | 3.1.1 |
| Component: | Core | Version: | 3.0.3 |
| Severity: | Annoyance | Keywords: | empty,geometry |
| Cc: |
Description
When doing operations to complicated multipolygons, I ran across this. When I had a multipolygon of the form: MULTIPOLYGON (((1.0000000000000000 1.0000000000000000, 1.0000000000000000 5.0000000000000000, 5.0000000000000000 5.0000000000000000, 5.0000000000000000 1.0000000000000000, 1.0000000000000000 1.0000000000000000), EMPTY)) (empty, but existing, holes polygon)
and I tried to intersect it with another polygon, say MULTIPOLYGON (((3.0000000000000000 3.0000000000000000, 3.0000000000000000 4.0000000000000000, 4.0000000000000000 4.0000000000000000, 4.0000000000000000 3.0000000000000000, 3.0000000000000000 3.0000000000000000)))
I get the error: CoordinateArraySequence?.cpp:105: virtual const geos::geom::Coordinate& geos::geom::CoordinateArraySequence::getAt(size_t) const: Assertion `pos<vect->size()' failed. Abort
However, if there isn't an empty hole polygon it works fine.
This happens in both geos3.0.0 and geos3.1.0rc2. I'm running SUSE LINUX 10.1 (X86-64).

