diff --git a/lib/mlm/file-tags.vala b/lib/mlm/file-tags.vala index 7414628a5015387058e3ce875d3fc313b4527338..98ad1f7195e9d79006ee1099cf3a7b79ca47bd1b 100644 --- a/lib/mlm/file-tags.vala +++ b/lib/mlm/file-tags.vala @@ -48,25 +48,7 @@ namespace MLM { private string _band; public string band { get { return _band; } - set { - if (value == "" && _band == null) - return; - Id3Tag.Frame band_frame; - if (value == "") { - band_frame = tag.search_frame(FrameId.BAND); - tag.detachframe(band_frame); - _band = null; - return; - } - if (_band == null) { - band_frame = tag.create_text_frame(FrameId.BAND); - tag.attachframe(band_frame); - } else { - band_frame = tag.search_frame(FrameId.BAND); - } - _band = value; - band_frame.set_text(_band); - } + set { define_band(value); } } private string _title; @@ -540,6 +522,26 @@ namespace MLM { } } + private void define_band(string b) { + if (b == "" && _band == null) + return; + Id3Tag.Frame band_frame; + if (b == "") { + band_frame = tag.search_frame(FrameId.BAND); + tag.detachframe(band_frame); + _band = null; + return; + } + if (_band == null) { + band_frame = tag.create_text_frame(FrameId.BAND); + tag.attachframe(band_frame); + } else { + band_frame = tag.search_frame(FrameId.BAND); + } + _band = b; + band_frame.set_text(_band); + } + ~FileTags() { if (file != null) { file.close();