mirror of
https://github.com/NohamR/Reclass.git
synced 2026-05-10 19:59:21 +00:00
feat: 32-bit process support, scanner rescan filtering, suppress flash on navigate
- Add pointerSize() to Provider base; WoW64/ELF detection in ProcessMemory, WinDbg, and RemoteProcessMemory plugins - Wire pointer size through NodeTree, source/XML imports, C++ generator, controller, compose, address parser, and RPC protocol header - Add is32Bit to PluginProcessInfo and ProcessInfo; show (32-bit) in picker - Scanner rescan now filters results against the current input value - Go-to-address from scanner resets change tracking to prevent false flashing
This commit is contained in:
@@ -554,10 +554,12 @@ void composeParent(ComposeState& state, const NodeTree& tree,
|
||||
*ok = false;
|
||||
return 0;
|
||||
};
|
||||
cbs.readPointer = [&prov](uint64_t addr, bool* ok) -> uint64_t {
|
||||
if (prov.isValid() && prov.isReadable(addr, 8)) {
|
||||
int ps = tree.pointerSize;
|
||||
cbs.readPointer = [&prov, ps](uint64_t addr, bool* ok) -> uint64_t {
|
||||
if (prov.isValid() && prov.isReadable(addr, ps)) {
|
||||
*ok = true;
|
||||
return prov.readU64(addr);
|
||||
return (ps >= 8) ? prov.readU64(addr)
|
||||
: (uint64_t)prov.readU32(addr);
|
||||
}
|
||||
*ok = false;
|
||||
return 0;
|
||||
@@ -574,7 +576,7 @@ void composeParent(ComposeState& state, const NodeTree& tree,
|
||||
uint64_t staticAddr = 0;
|
||||
bool exprOk = false;
|
||||
if (!sf.offsetExpr.isEmpty()) {
|
||||
auto result = AddressParser::evaluate(sf.offsetExpr, 8, &cbs);
|
||||
auto result = AddressParser::evaluate(sf.offsetExpr, tree.pointerSize, &cbs);
|
||||
exprOk = result.ok;
|
||||
if (result.ok)
|
||||
staticAddr = result.value;
|
||||
|
||||
Reference in New Issue
Block a user