void wxHashTable::DoCopy(const wxHashTable& table)
{
n = table.n;
+ m_count = table.m_count;
current_position = table.current_position;
current_node = NULL; // doesn't matter - Next() will reconstruct it
key_type = table.key_type;
if (!hash_table[position])
{
- hash_table[position] = new wxList (wxKEY_STRING);
+ hash_table[position] = new wxList (wxKEY_INTEGER);
if (m_deleteContents) hash_table[position]->DeleteContents(TRUE);
}
if (!hash_table[position])
{
- hash_table[position] = new wxList (wxKEY_INTEGER);
+ hash_table[position] = new wxList (wxKEY_STRING);
if (m_deleteContents) hash_table[position]->DeleteContents(TRUE);
}
void wxHashTable::Clear ()
{
- int i;
- for (i = 0; i < n; i++)
+ int i;
+ if (hash_table)
{
- if (hash_table[i])
- hash_table[i]->Clear ();
+ for (i = 0; i < n; i++)
+ {
+ if (hash_table[i])
+ hash_table[i]->Clear ();
+ }
}
m_count = 0;
}