librazor/importer.c
changeset 479 4204db81cdbc
parent 458 3f841a46eab5
     1.1 --- a/librazor/importer.c	Fri Oct 17 10:10:57 2014 +0100
     1.2 +++ b/librazor/importer.c	Thu Jul 07 15:17:29 2016 +0100
     1.3 @@ -1,7 +1,7 @@
     1.4  /*
     1.5   * Copyright (C) 2008  Kristian Høgsberg <krh@redhat.com>
     1.6   * Copyright (C) 2008  Red Hat, Inc
     1.7 - * Copyright (C) 2009  J. Ali Harlow <ali@juiblex.co.uk>
     1.8 + * Copyright (C) 2009, 2016  J. Ali Harlow <ali@juiblex.co.uk>
     1.9   *
    1.10   * This program is free software; you can redistribute it and/or modify
    1.11   * it under the terms of the GNU General Public License as published by
    1.12 @@ -60,7 +60,28 @@
    1.13  RAZOR_EXPORT void
    1.14  razor_importer_destroy(struct razor_importer *importer)
    1.15  {
    1.16 -	/* FIXME: write this */
    1.17 +	struct import_entry *e, *end;
    1.18 +
    1.19 +	razor_set_unref(importer->set);
    1.20 +	hashtable_release(&importer->table);
    1.21 +	hashtable_release(&importer->details_table);
    1.22 +	hashtable_release(&importer->file_table);
    1.23 +
    1.24 +	e = importer->files.data;
    1.25 +	end = importer->files.data + importer->files.size;
    1.26 +	while (e < end) {
    1.27 +		free(e->name);
    1.28 +		e++;
    1.29 +	}
    1.30 +	array_release(&importer->files);
    1.31 +	array_release(&importer->file_requires);
    1.32 +
    1.33 +	if (importer->package) {
    1.34 +		array_release(&importer->properties);
    1.35 +		array_release(&importer->install_prefixes);
    1.36 +	}
    1.37 +
    1.38 +	free(importer);
    1.39  }
    1.40  
    1.41  
    1.42 @@ -125,6 +146,8 @@
    1.43  
    1.44  	array_release(&importer->properties);
    1.45  	array_release(&importer->install_prefixes);
    1.46 +
    1.47 +	importer->package = NULL;
    1.48  }
    1.49  
    1.50  /**