mirror of
https://github.com/QuasarApp/pe-parse.git
synced 2025-05-03 07:29:34 +00:00
Fixes Issue #23
This commit is contained in:
parent
8505e15e3f
commit
e09f4a9e52
parser-library
@ -220,6 +220,13 @@ struct resource_dir_entry_sz {
|
|||||||
};
|
};
|
||||||
|
|
||||||
struct resource_dir_entry {
|
struct resource_dir_entry {
|
||||||
|
inline resource_dir_entry(void)
|
||||||
|
: ID(0),
|
||||||
|
RVA(0),
|
||||||
|
type(0),
|
||||||
|
name(0),
|
||||||
|
lang(0) {}
|
||||||
|
|
||||||
boost::uint32_t ID;
|
boost::uint32_t ID;
|
||||||
boost::uint32_t RVA;
|
boost::uint32_t RVA;
|
||||||
boost::uint32_t type;
|
boost::uint32_t type;
|
||||||
|
@ -161,14 +161,9 @@ bool parse_resource_table(bounded_buffer *sectionData, ::uint32_t o, ::uint32_t
|
|||||||
return true; // This is not a hard error. It does happen.
|
return true; // This is not a hard error. It does happen.
|
||||||
|
|
||||||
for (i = 0; i < rdt.NameEntries + rdt.IDEntries; i++) {
|
for (i = 0; i < rdt.NameEntries + rdt.IDEntries; i++) {
|
||||||
resource_dir_entry *rde;
|
resource_dir_entry *rde = dirent;
|
||||||
if (!dirent) {
|
if (!dirent) {
|
||||||
rde = new resource_dir_entry();
|
rde = new resource_dir_entry;
|
||||||
if (!rde)
|
|
||||||
return false;
|
|
||||||
memset(rde, 0, sizeof(*rde));
|
|
||||||
} else {
|
|
||||||
rde = dirent;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
READ_DWORD_PTR(sectionData, o, rde, ID);
|
READ_DWORD_PTR(sectionData, o, rde, ID);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user