X-Git-Url: https://git.distorted.org.uk/~mdw/disorder/blobdiff_plain/132a5a4a47f9dbc7c52ee15234d70258c59ccf8e..b59c46fd2f2c5d094ad9d7b72fec772b99356419:/lib/vector.c diff --git a/lib/vector.c b/lib/vector.c index 4d798f1..0d1dd4e 100644 --- a/lib/vector.c +++ b/lib/vector.c @@ -1,6 +1,6 @@ /* * This file is part of DisOrder. - * Copyright (C) 2004, 2007, 2008 Richard Kettlewell + * Copyright (C) 2004, 2007-2009, 2013 Richard Kettlewell * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -38,6 +38,20 @@ void dynstr_append_bytes(struct dynstr *v, const char *ptr, size_t n) { } } +/** @brief Free a string list */ +void free_strings(int nvec, char **vec) { + int n; + for(n = 0; n < nvec; ++n) + xfree(vec[n]); + xfree(vec); +} + +/** @brief Free and re-initialize a vector */ +void vector_clear(struct vector *v) { + free_strings(v->nvec, v->vec); + vector_init(v); +} + /* Local Variables: c-basic-offset:2