vmlinux refactoring: move destructor into PackVmlinuxBase.

This commit is contained in:
Markus F.X.J. Oberhumer
2006-12-19 00:48:38 +01:00
parent 728e6d851e
commit 94f3749784
2 changed files with 8 additions and 18 deletions
+7 -15
View File
@@ -50,13 +50,19 @@ static const
// //
**************************************************************************/ **************************************************************************/
PackVmlinuxI386::~PackVmlinuxI386() template <class T>
PackVmlinuxBase<T>::~PackVmlinuxBase()
{ {
delete [] shstrtab; delete [] shstrtab;
delete [] phdri; delete [] phdri;
delete [] shdri; delete [] shdri;
} }
/*************************************************************************
//
**************************************************************************/
const int *PackVmlinuxI386::getCompressionMethods(int method, int level) const const int *PackVmlinuxI386::getCompressionMethods(int method, int level) const
{ {
return Packer::getDefaultCompressionMethods_le32(method, level); return Packer::getDefaultCompressionMethods_le32(method, level);
@@ -110,13 +116,6 @@ PackVmlinuxI386::getElfSections()
return shstrsec; return shstrsec;
} }
PackVmlinuxARM::~PackVmlinuxARM()
{
delete [] shstrtab;
delete [] phdri;
delete [] shdri;
}
const int *PackVmlinuxARM::getCompressionMethods(int method, int level) const const int *PackVmlinuxARM::getCompressionMethods(int method, int level) const
{ {
return Packer::getDefaultCompressionMethods_8(method, level); return Packer::getDefaultCompressionMethods_8(method, level);
@@ -1243,13 +1242,6 @@ void PackVmlinuxARM::unpack(OutputFile *fo)
// //
**************************************************************************/ **************************************************************************/
PackVmlinuxAMD64::~PackVmlinuxAMD64()
{
delete [] shstrtab;
delete [] phdri;
delete [] shdri;
}
const int *PackVmlinuxAMD64::getCompressionMethods(int method, int level) const const int *PackVmlinuxAMD64::getCompressionMethods(int method, int level) const
{ {
return Packer::getDefaultCompressionMethods_le32(method, level); return Packer::getDefaultCompressionMethods_le32(method, level);
+1 -3
View File
@@ -51,6 +51,7 @@ public:
{ {
bele = N_BELE_CTP::getRTP<typename TElfClass::BeLePolicy>(); bele = N_BELE_CTP::getRTP<typename TElfClass::BeLePolicy>();
} }
virtual ~PackVmlinuxBase();
protected: protected:
int n_ptload; int n_ptload;
@@ -70,7 +71,6 @@ class PackVmlinuxI386 : public PackVmlinuxBase<ElfClass_LE32>
typedef PackVmlinuxBase<ElfClass_LE32> super; typedef PackVmlinuxBase<ElfClass_LE32> super;
public: public:
PackVmlinuxI386(InputFile *f) : super(f) { } PackVmlinuxI386(InputFile *f) : super(f) { }
virtual ~PackVmlinuxI386();
virtual int getVersion() const { return 13; } virtual int getVersion() const { return 13; }
virtual int getFormat() const { return UPX_F_VMLINUX_i386; } virtual int getFormat() const { return UPX_F_VMLINUX_i386; }
virtual const char *getName() const { return "vmlinux/386"; } virtual const char *getName() const { return "vmlinux/386"; }
@@ -97,7 +97,6 @@ class PackVmlinuxARM : public PackVmlinuxBase<ElfClass_LE32>
typedef PackVmlinuxBase<ElfClass_LE32> super; typedef PackVmlinuxBase<ElfClass_LE32> super;
public: public:
PackVmlinuxARM(InputFile *f) : super(f) { } PackVmlinuxARM(InputFile *f) : super(f) { }
virtual ~PackVmlinuxARM();
virtual int getVersion() const { return 13; } virtual int getVersion() const { return 13; }
virtual int getFormat() const { return UPX_F_VMLINUX_ARM; } virtual int getFormat() const { return UPX_F_VMLINUX_ARM; }
virtual const char *getName() const { return "vmlinux/ARM"; } virtual const char *getName() const { return "vmlinux/ARM"; }
@@ -124,7 +123,6 @@ class PackVmlinuxAMD64 : public PackVmlinuxBase<ElfClass_LE64>
typedef PackVmlinuxBase<ElfClass_LE64> super; typedef PackVmlinuxBase<ElfClass_LE64> super;
public: public:
PackVmlinuxAMD64(InputFile *f) : super(f) { } PackVmlinuxAMD64(InputFile *f) : super(f) { }
virtual ~PackVmlinuxAMD64();
virtual int getVersion() const { return 13; } virtual int getVersion() const { return 13; }
virtual int getFormat() const { return UPX_F_VMLINUX_AMD64; } virtual int getFormat() const { return UPX_F_VMLINUX_AMD64; }
virtual const char *getName() const { return "vmlinux/AMD64"; } virtual const char *getName() const { return "vmlinux/AMD64"; }