mirror of
https://github.com/postgres/postgres.git
synced 2025-11-19 13:42:17 +03:00
add new list type simple_oid_string_list to fe-utils/simple_list
This type contains both an oid and a string. This will be used in forthcoming changes to pg_restore. Author: Andrew Dunstan <andrew@dunslane.net>
This commit is contained in:
@@ -192,3 +192,44 @@ simple_ptr_list_destroy(SimplePtrList *list)
|
||||
cell = next;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Add to an oid_string list
|
||||
*/
|
||||
void
|
||||
simple_oid_string_list_append(SimpleOidStringList *list, Oid oid, const char *str)
|
||||
{
|
||||
SimpleOidStringListCell *cell;
|
||||
|
||||
cell = (SimpleOidStringListCell *)
|
||||
pg_malloc(offsetof(SimpleOidStringListCell, str) + strlen(str) + 1);
|
||||
|
||||
cell->next = NULL;
|
||||
cell->oid = oid;
|
||||
strcpy(cell->str, str);
|
||||
|
||||
if (list->tail)
|
||||
list->tail->next = cell;
|
||||
else
|
||||
list->head = cell;
|
||||
list->tail = cell;
|
||||
}
|
||||
|
||||
/*
|
||||
* Destroy an oid_string list
|
||||
*/
|
||||
void
|
||||
simple_oid_string_list_destroy(SimpleOidStringList *list)
|
||||
{
|
||||
SimpleOidStringListCell *cell;
|
||||
|
||||
cell = list->head;
|
||||
while (cell != NULL)
|
||||
{
|
||||
SimpleOidStringListCell *next;
|
||||
|
||||
next = cell->next;
|
||||
pg_free(cell);
|
||||
cell = next;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user