|
@@ -837,7 +837,10 @@ void SMDImporter::ParseNodeInfo(const char* szCurrent, const char** szCurrentOut
|
|
|
unsigned int iBone = 0;
|
|
|
SkipSpacesAndLineEnd(szCurrent,&szCurrent);
|
|
|
if ( !ParseUnsignedInt(szCurrent,&szCurrent,iBone) || !SkipSpaces(szCurrent,&szCurrent)) {
|
|
|
- LogErrorNoThrow("Unexpected EOF/EOL while parsing bone index");
|
|
|
+ throw DeadlyImportError("Unexpected EOF/EOL while parsing bone index");
|
|
|
+ }
|
|
|
+ if (iBone == UINT_MAX) {
|
|
|
+ LogErrorNoThrow("Invalid bone number while parsing bone index");
|
|
|
SMDI_PARSE_RETURN;
|
|
|
}
|
|
|
// add our bone to the list
|