Hi developers!
I found a problem while tried to compile project with Visual Studio 2008. All issues are applied to invalid usage of class vector. Here is an example of right code (at least I believe in this):
bool OllyLang::unregMemBlock(void * hMem)
{
vector<t_dbgmemblock>::iterator block;
for (block = tMemBlocks.begin(); block != tMemBlocks.end(); block++) {
if ((*block).hmem == hMem) { // here was a compiler's version independent problem: '=' instead of '=='
tMemBlocks.erase(block);
return true;
}
}
return false;
}
Was:
bool OllyLang::unregMemBlock(void * hMem)
{
t_dbgmemblock * block;
for (int b=0; b<tMemBlocks.size(); b++) {
block = &tMemBlocks[b];
if (block->hmem = hMem) {
tMemBlocks.erase(block);
return true;
}
}
return false;
}
Same problem in the OllyLang::ProcessAddonAction.
P.S. Could I join and help with developing of this nice library?
"if ((*block).hmem == hMem) {" in my fix should be "if (block->hmem == hMem) {"