fixed a small bug in Process::MemSearchAndReplace

This commit is contained in:
mrexodia 2016-01-11 00:25:00 +01:00
parent a2a02048ab
commit c06b32e047
2 changed files with 6 additions and 5 deletions

View File

@ -101,12 +101,13 @@ namespace GleeBug
return MemWrite(data, buffer.data(), datasize, nullptr, safe); return MemWrite(data, buffer.data(), datasize, nullptr, safe);
} }
bool Process::MemSearchAndReplacePattern(ptr data, size_t datasize, const Pattern::WildcardPattern & searchpattern, const Pattern::WildcardPattern & replacepattern, bool safe) bool Process::MemSearchAndReplace(ptr data, size_t datasize, const Pattern::WildcardPattern & searchpattern, const Pattern::WildcardPattern & replacepattern, bool safe)
{ {
std::vector<uint8> buffer(datasize); std::vector<uint8> buffer(datasize);
if (!MemRead(data, buffer.data(), datasize, nullptr, safe)) if (!MemRead(data, buffer.data(), datasize, nullptr, safe))
return false; return false;
Pattern::SearchAndReplace(buffer.data(), datasize, searchpattern, replacepattern); if (!Pattern::SearchAndReplace(buffer.data(), datasize, searchpattern, replacepattern))
return false;
return MemWrite(data, buffer.data(), datasize, nullptr, safe); return MemWrite(data, buffer.data(), datasize, nullptr, safe);
} }
}; };

View File

@ -182,7 +182,7 @@ namespace GleeBug
\param safe Use the safe memory functions (eg do not consider software breakpoint data). \param safe Use the safe memory functions (eg do not consider software breakpoint data).
\return true if it succeeds, false if it fails. \return true if it succeeds, false if it fails.
*/ */
bool MemSearchAndReplacePattern(ptr data, size_t datasize, const Pattern::WildcardPattern & searchpattern, const Pattern::WildcardPattern & replacepattern, bool safe = true); bool MemSearchAndReplace(ptr data, size_t datasize, const Pattern::WildcardPattern & searchpattern, const Pattern::WildcardPattern & replacepattern, bool safe = true);
/** /**
\brief Search and replace a pattern in process memory. \brief Search and replace a pattern in process memory.
@ -193,9 +193,9 @@ namespace GleeBug
\param safe Use the safe memory functions (eg do not consider software breakpoint data). \param safe Use the safe memory functions (eg do not consider software breakpoint data).
\return true if it succeeds, false if it fails. \return true if it succeeds, false if it fails.
*/ */
bool MemSearchAndReplacePattern(ptr data, size_t datasize, const std::string & searchpattern, const std::string & replacepattern, bool safe = true) bool MemSearchAndReplace(ptr data, size_t datasize, const std::string & searchpattern, const std::string & replacepattern, bool safe = true)
{ {
return MemSearchAndReplacePattern(data, datasize, Pattern::Transform(searchpattern), Pattern::Transform(replacepattern), safe); return MemSearchAndReplace(data, datasize, Pattern::Transform(searchpattern), Pattern::Transform(replacepattern), safe);
} }
/** /**