Avoid reading past EOF when encountering a malformed STL file
Since IsSpaceOrNewLine returns true on '\0' we might try to read past end of buffer on line 310. Add explicit check to avoid this.pull/629/head
parent
295a9abbdc
commit
b39446b7bb
|
@ -279,7 +279,7 @@ void STLImporter::LoadASCIIFile()
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
// facet normal -0.13 -0.13 -0.98
|
// facet normal -0.13 -0.13 -0.98
|
||||||
if (!strncmp(sz,"facet",5) && IsSpaceOrNewLine(*(sz+5))) {
|
if (!strncmp(sz,"facet",5) && IsSpaceOrNewLine(*(sz+5)) && *(sz + 5) != '\0') {
|
||||||
|
|
||||||
if (3 != curVertex) {
|
if (3 != curVertex) {
|
||||||
DefaultLogger::get()->warn("STL: A new facet begins but the old is not yet complete");
|
DefaultLogger::get()->warn("STL: A new facet begins but the old is not yet complete");
|
||||||
|
|
Loading…
Reference in New Issue