Fixed signature iterator loop. We must reduce the iterator because the call qvector::erase() shifts vector and causes skipping elements of iterator in the loop. This cause crashes in some situations.

This commit is contained in:
valentin
2018-07-10 11:03:47 +03:00
parent 1ec918f3cb
commit 613922f3dd

View File

@@ -227,7 +227,7 @@ bool AutoGenerate( qSigVector& refvecSig, ea_t dwAddress )
msg( "not enough candidates to proceed. aborting...\n" );
return false;
}
vecSig.erase( i );
vecSig.erase( i-- );
continue;
}
(*i).iOpCount++;
@@ -441,4 +441,4 @@ void GenerateSig( SigType eType )
break;
}
}
}
}