From 40be55ae93f405797f9b0adc1bd58cddc2e58636 Mon Sep 17 00:00:00 2001 From: Eyal <109809+eyal0@users.noreply.github.com> Date: Wed, 7 Dec 2022 21:59:48 -0700 Subject: [PATCH] Don't initialize CoordinateSequence in constructor This ought to improve performance in the common case where initialization is unnecessary. --- src/geom/CoordinateSequence.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/geom/CoordinateSequence.cpp b/src/geom/CoordinateSequence.cpp index f3e1a85ebb..7ba8b34331 100644 --- a/src/geom/CoordinateSequence.cpp +++ b/src/geom/CoordinateSequence.cpp @@ -75,7 +75,9 @@ CoordinateSequence::CoordinateSequence(std::size_t sz, std::size_t dim) : if (dim == 1 || dim > 4) { throw util::IllegalArgumentException("Declared dimension must be 2, 3, or 4"); } - initialize(); + if (sz > 0 && dim == 0) { + m_vect[0] = geos::geom::Coordinate(); + } } CoordinateSequence::CoordinateSequence(const std::initializer_list& list) :