diff options
author | sagitario <sagitario@fc51e93f-b9fe-4711-8d8d-3ae870c5f7d8> | 2010-04-13 06:33:54 (GMT) |
---|---|---|
committer | sagitario <sagitario@fc51e93f-b9fe-4711-8d8d-3ae870c5f7d8> | 2010-04-13 06:33:54 (GMT) |
commit | 1157fd5b8b7ad5feced2304400ea2a6d34fc9998 (patch) | |
tree | e3f55eed0d37e2c36aef32229ffa67dc63384af9 /src/PEImage.h | |
parent | b5b9076d2370cb7a5d9fe30c7ffee38e19def0c7 (diff) | |
download | cv2pdb-1157fd5b8b7ad5feced2304400ea2a6d34fc9998.zip cv2pdb-1157fd5b8b7ad5feced2304400ea2a6d34fc9998.tar.gz cv2pdb-1157fd5b8b7ad5feced2304400ea2a6d34fc9998.tar.bz2 |
Diffstat (limited to 'src/PEImage.h')
-rw-r--r-- | src/PEImage.h | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/src/PEImage.h b/src/PEImage.h index 039d2a1..a43d02b 100644 --- a/src/PEImage.h +++ b/src/PEImage.h @@ -1,5 +1,5 @@ // Convert DMD CodeView debug information to PDB files
-// Copyright (c) 2009 by Rainer Schuetze, All Rights Reserved
+// Copyright (c) 2009-2010 by Rainer Schuetze, All Rights Reserved
//
// License for redistribution is given by the Artistic License 2.0
// see file LICENSE for further details
@@ -39,20 +39,20 @@ public: return DPV<P>(cv_base + off, sizeof(P));
}
- template<class P> P* RVA(unsigned long rva, int len) - { + template<class P> P* RVA(unsigned long rva, int len)
+ {
IMAGE_DOS_HEADER *dos = DPV<IMAGE_DOS_HEADER> (0);
IMAGE_NT_HEADERS32* hdr = DPV<IMAGE_NT_HEADERS32> (dos->e_lfanew);
IMAGE_SECTION_HEADER* sec = IMAGE_FIRST_SECTION(hdr);
- - for (int i = 0; i < hdr->FileHeader.NumberOfSections; i++) - { - if (rva >= sec[i].VirtualAddress && - rva + len <= sec[i].VirtualAddress + sec[i].SizeOfRawData) - return DPV<P>(sec[i].PointerToRawData + rva - sec[i].VirtualAddress, len); - } - return 0; - } +
+ for (int i = 0; i < hdr->FileHeader.NumberOfSections; i++)
+ {
+ if (rva >= sec[i].VirtualAddress &&
+ rva + len <= sec[i].VirtualAddress + sec[i].SizeOfRawData)
+ return DPV<P>(sec[i].PointerToRawData + rva - sec[i].VirtualAddress, len);
+ }
+ return 0;
+ }
bool load(const char* iname);
bool save(const char* oname);
@@ -71,7 +71,7 @@ public: private:
int fd;
- void* dump_base; + void* dump_base;
int dump_total_len;
IMAGE_DOS_HEADER *dos;
|