Blob Blame History Raw
From 1eeffc5daf5a06cf6213ffc19e95923cdebb2eb8 Mon Sep 17 00:00:00 2001
From: Andrew Mustun <andrew@qcad.org>
Date: Wed, 4 Aug 2021 22:32:43 +0200
Subject: [PATCH] check vertexIndex which might be -1 for broken DXF

---
 contrib/dxflib-3.17.0/src/dl_dxf.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/contrib/dxflib-3.17.0/src/dl_dxf.cpp b/contrib/dxflib-3.17.0/src/dl_dxf.cpp
index c31d68f5a2..5df93924a3 100644
--- a/contrib/dxflib-3.17.0/src/dl_dxf.cpp
+++ b/contrib/dxflib-3.17.0/src/dl_dxf.cpp
@@ -1448,10 +1448,10 @@ bool DL_Dxf::handleLWPolylineData(DL_CreationInterface* /*creationInterface*/) {
         }
 
         if (groupCode<=30) {
-            if (vertexIndex>=0 && vertexIndex<maxVertices) {
+            if (vertexIndex>=0 && vertexIndex<maxVertices && vertexIndex>=0) {
                 vertices[4*vertexIndex + (groupCode/10-1)] = toReal(groupValue);
             }
-        } else if (groupCode==42 && vertexIndex<maxVertices) {
+        } else if (groupCode==42 && vertexIndex<maxVertices && vertexIndex>=0) {
             vertices[4*vertexIndex + 3] = toReal(groupValue);
         }
         return true;