From c5eddaf52ee5c90bda26e2419a8b1e3d1d24cb9e Mon Sep 17 00:00:00 2001 From: Christophe Geuzaine <cgeuzaine@uliege.be> Date: Tue, 28 Jun 2022 15:58:17 +0200 Subject: [PATCH] handling empty continuation markers: cf. #1988 --- src/geo/GModelIO_BDF.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/geo/GModelIO_BDF.cpp b/src/geo/GModelIO_BDF.cpp index 187f6cd4ce..8fe82637fc 100644 --- a/src/geo/GModelIO_BDF.cpp +++ b/src/geo/GModelIO_BDF.cpp @@ -161,15 +161,15 @@ static int readElementBDF(FILE *fp, char *buffer, int keySize, int numVertices, readLineBDF(buffer, format, fields); if(((int)fields.size() - 2 < abs(numVertices)) || - (numVertices < 0 && (fields.size() == 9))) { - if(fields.size() == 9) fields.pop_back(); + (numVertices < 0 && (fields.size() == 8 || fields.size() == 9))) { + if(fields.size() == 9) fields.pop_back(); // drop continuation string if(!fgets(buffer2, sizeof(buffer2), fp)) return 0; readLineBDF(buffer2, format, fields); } if(((int)fields.size() - 2 < abs(numVertices)) || - (numVertices < 0 && (fields.size() == 17))) { - if(fields.size() == 17) fields.pop_back(); + (numVertices < 0 && (fields.size() == 15 || fields.size() == 17))) { + if(fields.size() == 17) fields.pop_back(); // drop continuation string if(!fgets(buffer3, sizeof(buffer3), fp)) return 0; readLineBDF(buffer3, format, fields); } -- GitLab