Revert "Free tag lists propperly"

No, this causes double free problems.
And they show up in the weirdest ways, e.g. when just closing your data
file. Or when making changes and re-saving a modified dive.

Fixes #794

This reverts commit 0bdd8f41e0.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2014-12-21 11:05:51 -08:00
parent a0f7be7585
commit 1ba4137fec

8
dive.c
View file

@ -2461,12 +2461,6 @@ static inline void taglist_free_divetag(struct divetag *tag)
free(tag);
}
static inline void tag_entry_free(struct tag_entry *tag_entry)
{
taglist_free_divetag(tag_entry->tag);
free(tag_entry);
}
/* Add a tag to the tag_list, keep the list sorted */
static struct divetag *taglist_add_divetag(struct tag_entry **tag_list, struct divetag *tag)
{
@ -2535,7 +2529,7 @@ struct divetag *taglist_add_tag(struct tag_entry **tag_list, const char *tag)
void taglist_free(struct tag_entry *entry)
{
STRUCTURED_LIST_FREE(struct tag_entry, entry, tag_entry_free)
STRUCTURED_LIST_FREE(struct tag_entry, entry, free)
}
/* Merge src1 and src2, write to *dst */