Merge remote-tracking branch 'origin/topic/timw/dict-cleanup'

* origin/topic/timw/dict-cleanup:
  A few minor cleanups in Dict
This commit is contained in:
Jon Siwek 2020-04-14 15:45:54 -07:00
commit 2d91f9d89f
3 changed files with 13 additions and 9 deletions

View file

@ -1,4 +1,8 @@
3.2.0-dev.396 | 2020-04-14 15:45:54 -0700
* A few minor cleanups in Dict (Tim Wojtulewicz, Corelight)
3.2.0-dev.394 | 2020-04-14 15:29:00 -0700 3.2.0-dev.394 | 2020-04-14 15:29:00 -0700
* Fix a confusing variable name shadowing (Jon Siwek, Corelight) * Fix a confusing variable name shadowing (Jon Siwek, Corelight)

View file

@ -1 +1 @@
3.2.0-dev.394 3.2.0-dev.396

View file

@ -270,10 +270,8 @@ void* Dictionary::Lookup(const void* key, int key_size, hash_t hash) const
if ( chain ) if ( chain )
{ {
for ( int i = 0; i < chain->length(); ++i ) for ( const auto& entry : *chain )
{ {
DictEntry* entry = (*chain)[i];
if ( entry->hash == hash && entry->len == key_size && if ( entry->hash == hash && entry->len == key_size &&
! memcmp(key, entry->key, key_size) ) ! memcmp(key, entry->key, key_size) )
return entry->value; return entry->value;
@ -336,7 +334,9 @@ void* Dictionary::Remove(const void* key, int key_size, hash_t hash,
if ( ! chain ) if ( ! chain )
return nullptr; return nullptr;
for ( int i = 0; i < chain->length(); ++i ) size_t chain_length = chain->length();
for ( auto i = 0u; i < chain_length; ++i )
{ {
DictEntry* entry = (*chain)[i]; DictEntry* entry = (*chain)[i];
@ -635,7 +635,7 @@ bool Dictionary::IsPrime(int n) const
void Dictionary::StartChangeSize(int new_size) void Dictionary::StartChangeSize(int new_size)
{ {
// Only start resizing if there isn't any iteration in progress. // Only start resizing if there isn't any iteration in progress.
if ( cookies.length() > 0 ) if ( ! cookies.empty() )
return; return;
if ( tbl2 ) if ( tbl2 )
@ -652,7 +652,7 @@ void Dictionary::StartChangeSize(int new_size)
void Dictionary::MoveChains() void Dictionary::MoveChains()
{ {
// Do not change current distribution if there an ongoing iteration. // Do not change current distribution if there an ongoing iteration.
if ( cookies.length() > 0 ) if ( ! cookies.empty() )
return; return;
// Attempt to move this many entries (must do at least 2) // Attempt to move this many entries (must do at least 2)
@ -667,9 +667,9 @@ void Dictionary::MoveChains()
tbl[tbl_next_ind - 1] = nullptr; tbl[tbl_next_ind - 1] = nullptr;
for ( int j = 0; j < chain->length(); ++j ) for ( const auto& elem : *chain )
{ {
Insert((*chain)[j], false); Insert(elem, false);
--num_entries; --num_entries;
--num; --num;
} }