Added new macro CONST_CAST to avoid compiler warnings.
committer: mfx <mfx> 974103100 +0000
This commit is contained in:
parent
94071e4e5b
commit
7f3f4dad7d
@ -328,8 +328,7 @@ void *upx_main(
|
||||
Elf32_Phdr const *phdr = (Elf32_Phdr const *)(1+ehdr);
|
||||
Elf32_Addr entry;
|
||||
struct Extent xo;
|
||||
struct Extent xi = { 0, (sizeof(struct p_info) + lsize + (char *)my_ehdr) };
|
||||
// warning: 'const' cast away
|
||||
struct Extent xi = { 0, sizeof(struct p_info) + lsize + CONST_CAST(char *, my_ehdr) };
|
||||
|
||||
size_t const sz_elfhdrs = ((size_t *)xi.buf)[0]; // sizeof(Ehdr+Phdrs), uncompressed
|
||||
size_t const sz_pckhdrs = ((size_t *)xi.buf)[1]; // sizeof(Ehdr+Phdrs), compressed
|
||||
|
||||
@ -296,7 +296,7 @@ void *upx_main(
|
||||
*(unsigned short const *)(0x7c + (char const *)my_ehdr);
|
||||
struct Extent xi = { // describe compressed shell script
|
||||
((Elf32_Phdr const *)(1 + my_ehdr))->p_filesz - lsize,
|
||||
(lsize + (char *)my_ehdr) // warning: 'const' cast away
|
||||
lsize + CONST_CAST(char *, my_ehdr)
|
||||
};
|
||||
struct Extent xo = { ((struct p_info *)xi.buf)[-1].p_filesize, uncbuf };
|
||||
|
||||
|
||||
@ -51,6 +51,10 @@ struct timex;
|
||||
#include <linux/unistd.h>
|
||||
|
||||
|
||||
#define CONST_CAST(type, var) \
|
||||
((type) ((unsigned long) (var)))
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
// constants and types
|
||||
**************************************************************************/
|
||||
|
||||
Loading…
Reference in New Issue
Block a user