Project

General

Profile

playlist-data.cc.diff

m3u metadata patch - Jim Turner, July 16, 2022 18:24

View differences:

src/libaudcore/playlist-data.cc
170 170
    if (entry->selected)
171 171
        m_selected_length -= entry->length;
172 172

  
173
    /* JWT: KEEP (DON'T OVERWRITE/BLANK OUT) ENTRY'S EXTENDED M3U DATA IF TUPLE'S CORRESPONDING DATA IS NOT SET!
174
       (NEEDED FOR EXTENDED M3U PLAYLIST ITEMS THAT SET METADATA WITH #EXT*** TAGS!)
175
       (POSSIBILITIES ARE:  TITLE, ALBUM, ARTIST, & GENRE) - SEE:  https://en.wikipedia.org/wiki/Extended_M3U#M3U8)
176
       (NOTE:  MAY STILL BE OVERWRITTEN BY METADATA TAGS IN FILE OR USER TAG FILES!)
177
    */
178
    String Title = entry->tuple.get_str(Tuple::Title);
179
    if (!tuple.is_set(Tuple::Title))
180
        tuple.set_str(Tuple::Title, Title);
181
    String Album = entry->tuple.get_str (Tuple::Album);
182
    if (! tuple.is_set (Tuple::Album))
183
        tuple.set_str (Tuple::Album, Album);
184
    String Artist = entry->tuple.get_str (Tuple::Artist);
185
    if (! tuple.is_set (Tuple::Artist))
186
        tuple.set_str (Tuple::Artist, Artist);
187
    String Genre = entry->tuple.get_str (Tuple::Genre);
188
    if (! tuple.is_set (Tuple::Genre))
189
        tuple.set_str (Tuple::Genre, Genre);
190

  
173 191
    entry->set_tuple(std::move(tuple));
174 192

  
175 193
    m_total_length += entry->length;