extractor: Fix build with TagLib due to implicit type conversion.
The TagLib::Tag* that gets passed to extractId3Cover() needs to be a TagLib::ID3v2::Tag*. Not sure when this stopped building or what type signatures changed, but since in this code path we know it really is an ID3 tag, we just static_cast it downwards.
Addresses a build failure on master
I ran into today (now that TagLib is built properly):
/kdesrc/src/kf6/frameworks/kfilemetadata/src/extractors/taglibextractor.cpp: In member function ‘virtual void KFileMetaData::TagLibExtractor::extract(KFileMetaData::ExtractionResult*)’:
/kdesrc/src/kf6/frameworks/kfilemetadata/src/extractors/taglibextractor.cpp:586:62: error: invalid conversion from ‘TagLib::Tag*’ to ‘const TagLib::ID3v2::Tag*’ [-fpermissive]
586 | result->addImageData(extractId3Cover(file.tag(), imageTypes));
| ~~~~~~~~^~
| |
| TagLib::Tag*
/kdesrc/src/kf6/frameworks/kfilemetadata/src/extractors/taglibextractor.cpp:351:43: note: initializing argument 1 of ‘QMap<KFileMetaData::EmbeddedImageData::ImageType, QByteArray> {anonymous}::extractId3Cover(const TagLib::ID3v2::Tag*, KFileMetaData::EmbeddedImageData::ImageTypes)’
351 | extractId3Cover(const TagLib::ID3v2::Tag* Id3Tags,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
/kdesrc/src/kf6/frameworks/kfilemetadata/src/extractors/taglibextractor.cpp:587:40: error: invalid conversion from ‘TagLib::Tag*’ to ‘TagLib::ID3v2::Tag*’ [-fpermissive]
587 | extractId3Tags(file.tag(), result);
| ~~~~~~~~^~
| |
| TagLib::Tag*
/kdesrc/src/kf6/frameworks/kfilemetadata/src/extractors/taglibextractor.cpp:249:41: note: initializing argument 1 of ‘void {anonymous}::extractId3Tags(TagLib::ID3v2::Tag*, KFileMetaData::ExtractionResult*)’
249 | void extractId3Tags(TagLib::ID3v2::Tag* Id3Tags, ExtractionResult* result)
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~