Lines Matching refs:idx
64 struct env_entry *ep, int idx);
206 unsigned int idx; in hmatch_r() local
209 for (idx = last_idx + 1; idx < htab->size; ++idx) { in hmatch_r()
210 if (htab->table[idx].used <= 0) in hmatch_r()
212 if (!strncmp(match, htab->table[idx].entry.key, key_len)) { in hmatch_r()
213 *retval = &htab->table[idx].entry; in hmatch_r()
214 return idx; in hmatch_r()
241 unsigned int idx) in _compare_and_overwrite_entry() argument
243 if (htab->table[idx].used == hval in _compare_and_overwrite_entry()
244 && strcmp(item.key, htab->table[idx].entry.key) == 0) { in _compare_and_overwrite_entry()
249 &htab->table[idx].entry, item.data, in _compare_and_overwrite_entry()
259 if (do_callback(&htab->table[idx].entry, item.key, in _compare_and_overwrite_entry()
268 free(htab->table[idx].entry.data); in _compare_and_overwrite_entry()
269 htab->table[idx].entry.data = strdup(item.data); in _compare_and_overwrite_entry()
270 if (!htab->table[idx].entry.data) { in _compare_and_overwrite_entry()
277 *retval = &htab->table[idx].entry; in _compare_and_overwrite_entry()
278 return idx; in _compare_and_overwrite_entry()
290 unsigned int idx; in hsearch_r() local
311 idx = hval; in hsearch_r()
313 if (htab->table[idx].used) { in hsearch_r()
320 if (htab->table[idx].used == USED_DELETED) in hsearch_r()
321 first_deleted = idx; in hsearch_r()
324 flag, hval, idx); in hsearch_r()
339 if (idx <= hval2) in hsearch_r()
340 idx = htab->size + idx - hval2; in hsearch_r()
342 idx -= hval2; in hsearch_r()
348 if (idx == hval) in hsearch_r()
351 if (htab->table[idx].used == USED_DELETED in hsearch_r()
353 first_deleted = idx; in hsearch_r()
357 htab, flag, hval, idx); in hsearch_r()
361 while (htab->table[idx].used != USED_FREE); in hsearch_r()
381 idx = first_deleted; in hsearch_r()
383 htab->table[idx].used = hval; in hsearch_r()
384 htab->table[idx].entry.key = strdup(item.key); in hsearch_r()
385 htab->table[idx].entry.data = strdup(item.data); in hsearch_r()
386 if (!htab->table[idx].entry.key || in hsearch_r()
387 !htab->table[idx].entry.data) { in hsearch_r()
396 env_callback_init(&htab->table[idx].entry); in hsearch_r()
398 env_flags_init(&htab->table[idx].entry); in hsearch_r()
402 &htab->table[idx].entry, item.data, env_op_create, flag)) { in hsearch_r()
405 _hdelete(item.key, htab, &htab->table[idx].entry, idx); in hsearch_r()
412 if (do_callback(&htab->table[idx].entry, item.key, item.data, in hsearch_r()
416 _hdelete(item.key, htab, &htab->table[idx].entry, idx); in hsearch_r()
423 *retval = &htab->table[idx].entry; in hsearch_r()
444 struct env_entry *ep, int idx) in _hdelete() argument
451 htab->table[idx].used = USED_DELETED; in _hdelete()
459 int idx; in hdelete_r() local
465 idx = hsearch_r(e, ENV_FIND, &ep, htab, 0); in hdelete_r()
466 if (idx == 0) { in hdelete_r()
481 if (do_callback(&htab->table[idx].entry, key, NULL, in hdelete_r()
489 _hdelete(key, htab, ep, idx); in hdelete_r()