PPU Analyzer: Fix for unaligned sections
This commit is contained in:
@@ -699,6 +699,11 @@ bool ppu_module::analyse(u32 lib_toc, u32 entry, const u32 sec_end, const std::b
|
|||||||
// Find OPD section
|
// Find OPD section
|
||||||
for (const auto& sec : secs)
|
for (const auto& sec : secs)
|
||||||
{
|
{
|
||||||
|
if (sec.size % 8)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
vm::cptr<void> sec_end = vm::cast(sec.addr + sec.size);
|
vm::cptr<void> sec_end = vm::cast(sec.addr + sec.size);
|
||||||
|
|
||||||
// Probe
|
// Probe
|
||||||
@@ -785,6 +790,11 @@ bool ppu_module::analyse(u32 lib_toc, u32 entry, const u32 sec_end, const std::b
|
|||||||
// Find .eh_frame section
|
// Find .eh_frame section
|
||||||
for (const auto& sec : secs)
|
for (const auto& sec : secs)
|
||||||
{
|
{
|
||||||
|
if (sec.size % 4)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
vm::cptr<void> sec_end = vm::cast(sec.addr + sec.size);
|
vm::cptr<void> sec_end = vm::cast(sec.addr + sec.size);
|
||||||
|
|
||||||
// Probe
|
// Probe
|
||||||
|
|||||||
Reference in New Issue
Block a user