-#include <stdio.h>
#include "cache.h"
#include "path-list.h"
(list->nr - index)
* sizeof(struct path_list_item));
list->items[index].path = list->strdup_paths ?
- strdup(path) : (char *)path;
+ xstrdup(path) : (char *)path;
list->items[index].util = NULL;
list->nr++;
int index = add_entry(list, path);
if (index < 0)
- index = 1 - index;
+ index = -1 - index;
return list->items + index;
}
return list->items + i;
}
-void path_list_clear(struct path_list *list, int free_items)
+void path_list_clear(struct path_list *list, int free_util)
{
if (list->items) {
int i;
- if (free_items)
- for (i = 0; i < list->nr; i++) {
- if (list->strdup_paths)
- free(list->items[i].path);
- if (list->items[i].util)
- free(list->items[i].util);
- }
+ if (list->strdup_paths) {
+ for (i = 0; i < list->nr; i++)
+ free(list->items[i].path);
+ }
+ if (free_util) {
+ for (i = 0; i < list->nr; i++)
+ free(list->items[i].util);
+ }
free(list->items);
}
list->items = NULL;
for (i = 0; i < p->nr; i++)
printf("%s:%p\n", p->items[i].path, p->items[i].util);
}
-