X-Git-Url: https://main.carlh.net/gitweb/?p=ardour.git;a=blobdiff_plain;f=libs%2Fardour%2Faudiofile_tagger.cc;h=e2d81176e115dc87e0527efc7d9c538dab2e4039;hp=53b9afdd3ed37403d8732582f734973ebb336ad9;hb=c8c6bca6587450ff64303dbc994a4cd28d6ce7aa;hpb=8cd71108c1d153f84f25c3b9e5153a110826c130 diff --git a/libs/ardour/audiofile_tagger.cc b/libs/ardour/audiofile_tagger.cc index 53b9afdd3e..e2d81176e1 100644 --- a/libs/ardour/audiofile_tagger.cc +++ b/libs/ardour/audiofile_tagger.cc @@ -24,12 +24,12 @@ #include "pbd/convert.h" -#include "taglib/fileref.h" -#include "taglib/flac/flacfile.h" -#include "taglib/ogg/oggfile.h" -#include "taglib/tag.h" -#include "taglib/toolkit/taglib.h" -#include "taglib/ogg/xiphcomment.h" +#include +#include +#include +#include +#include +#include /* Convert string to TagLib::String */ #define TL_STR(string) TagLib::String ((string).c_str(), TagLib::String::UTF8) @@ -43,6 +43,16 @@ bool AudiofileTagger::tag_file (std::string const & filename, SessionMetadata const & metadata) { TagLib::FileRef file (filename.c_str()); + if (file.isNull()) { + std::cerr << "TagLib::FileRef is null for file" << filename << std::endl; + return true; // continue anyway?! + } + + if (!file.tag()) { + std::cerr << "TagLib::Tag is null for file" << filename << std::endl; + return true; // continue anyway?! + } + TagLib::Tag & tag (*file.tag()); tag_generic (tag, metadata);