Repository: xbmc/xbmc
File: xbmc/music/MusicUtils.cpp (C++)

Code before:

      return true;
    }
  };

  void UpdateArtJob(const CFileItemPtr pItem, const std::string& strType, const std::string& strArt)
  {
    // Asynchronously update that type of art in the database
    CSetArtJob *job = new CSetArtJob(pItem, strType, strArt);
    CJobManager::GetInstance().AddJob(job, NULL);
  }

  // Add art types required in Kodi
  void AddHardCodedArtTypes(std::vector<std::string>& artTypes, const CMusicInfoTag& tag)
  {
    artTypes.emplace_back("thumb");
    if (tag.GetType() == MediaTypeArtist)
    {
      artTypes.emplace_back("fanart");
    }
  }

  // Add art types configured by the user
  void AddExtendedArtTypes(std::vector<std::string>& artTypes, const CMusicInfoTag& tag)
  {
    for (const auto& artType : CMusicInfoScanner::GetArtTypesToScan(tag.GetType()))
    {
      if (find(artTypes.begin(), artTypes.end(), artType) == artTypes.end())
        artTypes.push_back(artType);
    }
  }

  // Add art types currently assigned to to the media item
  void AddCurrentArtTypes(std::vector<std::string>& artTypes, const CMusicInfoTag& tag,
    CMusicDatabase& db)
  {
    std::map<std::string, std::string> currentArt;
    db.GetArtForItem(tag.GetDatabaseId(), tag.GetType(), currentArt);
    for (const auto& art : currentArt)
    {
      if (!art.second.empty() && find(artTypes.begin(), artTypes.end(), art.first) == artTypes.end())
        artTypes.push_back(art.first);
    }
  }

  // Add art types that exist for other media items of the same type
  void AddMediaTypeArtTypes(std::vector<std::string>& artTypes, const CMusicInfoTag& tag,
    CMusicDatabase& db)
  {
    std::vector<std::string> dbArtTypes;
    db.GetArtTypes(tag.GetType(), dbArtTypes);

Review comment (suggestion):
GetArtTypesToScan is not in CMusicInfoScanner any more!
I suggest you correct and then squash the commits

Code after:
      return true;
    }
  };

  void UpdateArtJob(const CFileItemPtr pItem, const std::string& strType, const std::string& strArt)
  {
    // Asynchronously update that type of art in the database
    CSetArtJob *job = new CSetArtJob(pItem, strType, strArt);
    CJobManager::GetInstance().AddJob(job, NULL);
  }

  // Add art types required in Kodi
  void AddHardCodedArtTypes(std::vector<std::string>& artTypes, const CMusicInfoTag& tag)
  {
    artTypes.emplace_back("thumb");
    if (tag.GetType() == MediaTypeArtist)
    {
      artTypes.emplace_back("fanart");
    }
  }

  // Add art types configured by the user
  void AddExtendedArtTypes(std::vector<std::string>& artTypes, const CMusicInfoTag& tag)
  {
    for (const auto& artType : GetArtTypesToScan(tag.GetType()))
    {
      if (find(artTypes.begin(), artTypes.end(), artType) == artTypes.end())
        artTypes.push_back(artType);
    }
  }

  // Add art types currently assigned to to the media item
  void AddCurrentArtTypes(std::vector<std::string>& artTypes, const CMusicInfoTag& tag,
    CMusicDatabase& db)
  {
    std::map<std::string, std::string> currentArt;
    db.GetArtForItem(tag.GetDatabaseId(), tag.GetType(), currentArt);
    for (const auto& art : currentArt)
    {
      if (!art.second.empty() && find(artTypes.begin(), artTypes.end(), art.first) == artTypes.end())
        artTypes.push_back(art.first);
    }
  }

  // Add art types that exist for other media items of the same type
  void AddMediaTypeArtTypes(std::vector<std::string>& artTypes, const CMusicInfoTag& tag,
    CMusicDatabase& db)
  {
    std::vector<std::string> dbArtTypes;
    db.GetArtTypes(tag.GetType(), dbArtTypes);
    for (const auto& artType : dbArtTypes)