mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-06-01 08:04:56 +08:00
GP-0: PR cleanup
This commit is contained in:
@@ -357,39 +357,28 @@ public class OmfLoader extends AbstractProgramWrapperLoader {
|
|||||||
final Language language = program.getLanguage();
|
final Language language = program.getLanguage();
|
||||||
|
|
||||||
ArrayList<OmfSegmentHeader> segments = header.getSegments();
|
ArrayList<OmfSegmentHeader> segments = header.getSegments();
|
||||||
// int sectionNumber = 0;
|
|
||||||
for (OmfSegmentHeader segment : segments) {
|
for (OmfSegmentHeader segment : segments) {
|
||||||
// ++sectionNumber;
|
|
||||||
if (monitor.isCancelled()) {
|
if (monitor.isCancelled()) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// if (segment.hasIteratedData() && segment.hasEnumeratedData())
|
Address segmentAddr = segment.getAddress(language);
|
||||||
// throw new IOException("OMF segment has both iterated and enumerated data blocks");
|
|
||||||
MemoryBlock block = null;
|
|
||||||
|
|
||||||
final long segmentSize = segment.getSegmentLength();
|
final long segmentSize = segment.getSegmentLength();
|
||||||
|
|
||||||
Address segmentAddr = segment.getAddress(language);
|
|
||||||
|
|
||||||
if (segmentSize == 0) {
|
if (segmentSize == 0) {
|
||||||
// don't create a block
|
continue;
|
||||||
}
|
}
|
||||||
else if (segment.hasNonZeroData()) {
|
|
||||||
block = MemoryBlockUtils.createInitializedBlock(program, false, segment.getName(),
|
if (segment.hasNonZeroData()) {
|
||||||
segmentAddr, segment.getRawDataStream(reader, log), segmentSize,
|
MemoryBlockUtils.createInitializedBlock(program, false, segment.getName(),
|
||||||
"Address:0x" + Long.toHexString(segmentAddr.getOffset()) + " " + "Size:0x" +
|
segmentAddr, segment.getRawDataStream(reader, log), segmentSize, "", "",
|
||||||
Long.toHexString(segmentSize),
|
segment.isReadable(), segment.isWritable(), segment.isExecutable(), log,
|
||||||
null/*source*/, segment.isReadable(), segment.isWritable(),
|
monitor);
|
||||||
segment.isExecutable(), log, monitor);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
block = MemoryBlockUtils.createUninitializedBlock(program, false, segment.getName(),
|
MemoryBlockUtils.createUninitializedBlock(program, false, segment.getName(),
|
||||||
segmentAddr, segmentSize,
|
segmentAddr, segmentSize, "", "", segment.isReadable(), segment.isWritable(),
|
||||||
"Address:0x" + Long.toHexString(segmentAddr.getOffset()) + " " + "Size:0x" +
|
|
||||||
Long.toHexString(segmentSize),
|
|
||||||
null/*source*/, segment.isReadable(), segment.isWritable(),
|
|
||||||
segment.isExecutable(), log);
|
segment.isExecutable(), log);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user