From 1ba4137fec5b7f83b37c9165e1081f4062c50052 Mon Sep 17 00:00:00 2001 From: Dirk Hohndel Date: Sun, 21 Dec 2014 11:05:51 -0800 Subject: [PATCH] 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 0bdd8f41e0b217c6f0a3723dd756e96c93b3f5c6. Signed-off-by: Dirk Hohndel --- dive.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/dive.c b/dive.c index 734639312..ad9d6dadb 100644 --- a/dive.c +++ b/dive.c @@ -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 */