Fix for pure virtual method call caused by wxHashTable not

overriding virtual destructor.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27168 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Mattia Barbon
2004-05-08 09:33:29 +00:00
parent 24ec43dbdb
commit 6aa33060cd
2 changed files with 5 additions and 8 deletions

View File

@@ -159,7 +159,7 @@ public:
typedef wxHashTableBase_Node Node; typedef wxHashTableBase_Node Node;
wxHashTableBase(); wxHashTableBase();
virtual ~wxHashTableBase(); virtual ~wxHashTableBase() { };
void Create( wxKeyType keyType = wxKEY_INTEGER, void Create( wxKeyType keyType = wxKEY_INTEGER,
size_t size = wxHASH_SIZE_DEFAULT ); size_t size = wxHASH_SIZE_DEFAULT );
@@ -344,6 +344,8 @@ public:
: wxHashTableBase() { Create( keyType, size ); BeginFind(); } : wxHashTableBase() { Create( keyType, size ); BeginFind(); }
wxHashTable( const wxHashTable& table ); wxHashTable( const wxHashTable& table );
virtual ~wxHashTable() { Destroy(); }
const wxHashTable& operator=( const wxHashTable& ); const wxHashTable& operator=( const wxHashTable& );
void Destroy() { Clear(); } void Destroy() { Clear(); }
@@ -514,7 +516,7 @@ private:
size_t size = wxHASH_SIZE_DEFAULT) \ size_t size = wxHASH_SIZE_DEFAULT) \
: wxHashTableBase() { Create(keyType, size); } \ : wxHashTableBase() { Create(keyType, size); } \
\ \
~hashclass() { Destroy(); } \ virtual ~hashclass() { Destroy(); } \
\ \
void Destroy() { Clear(); } \ void Destroy() { Clear(); } \
void Put(long key, eltype *data) { DoPut(key, key, (void*)data); } \ void Put(long key, eltype *data) { DoPut(key, key, (void*)data); } \

View File

@@ -753,11 +753,6 @@ wxHashTableBase::wxHashTableBase()
{ {
} }
wxHashTableBase::~wxHashTableBase()
{
Destroy();
}
void wxHashTableBase::Create( wxKeyType keyType, size_t size ) void wxHashTableBase::Create( wxKeyType keyType, size_t size )
{ {
m_keyType = keyType; m_keyType = keyType;
@@ -1038,7 +1033,7 @@ const wxHashTable& wxHashTable::operator=( const wxHashTable& table )
return *this; return *this;
} }
void wxHashTable::DoCopy( const wxHashTable& table ) void wxHashTable::DoCopy( const wxHashTable& WXUNUSED(table) )
{ {
Create( m_keyType, m_size ); Create( m_keyType, m_size );