namecache: check for empty list before scavenging

Signed-off-by: Casey Bodley <cbodley@citi.umich.edu>
This commit is contained in:
Casey Bodley 2011-08-26 11:30:48 -04:00 committed by unknown
parent 74bb88fac6
commit af80ded902

View file

@ -437,6 +437,10 @@ static int name_cache_entry_create(
if (cache->entries >= cache->max_entries) { if (cache->entries >= cache->max_entries) {
/* scavenge the oldest entry */ /* scavenge the oldest entry */
if (list_empty(&cache->exp_entries)) {
status = ERROR_OUTOFMEMORY;
goto out;
}
entry = name_entry(cache->exp_entries.prev); entry = name_entry(cache->exp_entries.prev);
name_cache_unlink(cache, entry); name_cache_unlink(cache, entry);
@ -452,6 +456,7 @@ static int name_cache_entry_create(
name_cache_entry_rename(entry, component); name_cache_entry_rename(entry, component);
*entry_out = entry; *entry_out = entry;
out:
return status; return status;
} }