void *hashvector_next(hashvector *hv,vector_index *index,void *key) {
unsigned long i = index? *index : 0;
for ( ; i < hv->table.size; i++ ) {
- void **p = hashvector_find_slot( hv, key, &i, 0 );
+ void **p = vector_next_used( &hv->table, &i );
if ( p == 0 ) {
break;
}
if ( *p && *p != HV_HOLE ) {
- if ( key && hv->type->haskey( hv->type, key, *p ) == 0 ) {
+ if ( key && hv->type->haskey( hv->type, *p, key ) == 0 ) {
continue;
}
if ( index ) {