From d694150372408cd80b89a2e27a88f91b5f856b67 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 3 Dec 2013 13:18:53 +0100 Subject: Tag: destructor calls Clear() Eliminate duplicate code. --- src/tag/Tag.cxx | 10 ---------- src/tag/Tag.hxx | 4 +++- 2 files changed, 3 insertions(+), 11 deletions(-) (limited to 'src') diff --git a/src/tag/Tag.cxx b/src/tag/Tag.cxx index 7070d39c2..ac96f40b2 100644 --- a/src/tag/Tag.cxx +++ b/src/tag/Tag.cxx @@ -74,16 +74,6 @@ Tag::Clear() num_items = 0; } -Tag::~Tag() -{ - tag_pool_lock.lock(); - for (int i = num_items; --i >= 0; ) - tag_pool_put_item(items[i]); - tag_pool_lock.unlock(); - - delete[] items; -} - Tag::Tag(const Tag &other) :time(other.time), has_playlist(other.has_playlist), items(nullptr), diff --git a/src/tag/Tag.hxx b/src/tag/Tag.hxx index 457a889bd..480115c5b 100644 --- a/src/tag/Tag.hxx +++ b/src/tag/Tag.hxx @@ -71,7 +71,9 @@ struct Tag { /** * Free the tag object and all its items. */ - ~Tag(); + ~Tag() { + Clear(); + } Tag &operator=(const Tag &other) = delete; -- cgit v1.2.3