From 2e72a9b262ac71a8a7e8ed9b00efa80597d5f17d Mon Sep 17 00:00:00 2001
From: Max Kellermann <max@duempel.org>
Date: Wed, 17 Mar 2010 23:12:21 +0100
Subject: tag: added function tag_merge_replace()

Like tag_merge(), but can deal with NULL parameters, and frees both
tag objects.
---
 src/cue/cue_tag.c | 22 +---------------------
 1 file changed, 1 insertion(+), 21 deletions(-)

(limited to 'src/cue')

diff --git a/src/cue/cue_tag.c b/src/cue/cue_tag.c
index ce8202a81..6251b03e2 100644
--- a/src/cue/cue_tag.c
+++ b/src/cue/cue_tag.c
@@ -173,7 +173,6 @@ cue_tag_file(	FILE* fp,
 {
 	struct tag* cd_tag = NULL;
 	struct tag* track_tag = NULL;
-	struct tag* merge_tag = NULL;
 	struct Cd* cd = NULL;
 
 	if (tnum > 256)
@@ -199,26 +198,7 @@ cue_tag_file(	FILE* fp,
 		cd_delete(cd);
 	}
 
-	if ((cd_tag != NULL) && (track_tag != NULL))
-	{
-		merge_tag = tag_merge(cd_tag, track_tag);
-		tag_free(cd_tag);
-		tag_free(track_tag);
-		return merge_tag;
-	}
-
-	else if (cd_tag != NULL)
-	{
-		return cd_tag;
-	}
-
-	else if (track_tag != NULL)
-	{
-		return track_tag;
-	}
-
-	else
-		return NULL;
+	return tag_merge_replace(cd_tag, track_tag);
 }
 
 struct tag*
-- 
cgit v1.2.3