@@ -577,7 +577,7 @@ void game_list_frame::Refresh(const bool from_drive, const std::vector<std::stri
577577
578578void game_list_frame::OnParsingFinished ()
579579{
580- const Localized localized;
580+ const std::shared_ptr< const Localized> localized = std::make_shared< const Localized>() ;
581581 const std::string dev_flash = g_cfg_vfs.get_dev_flash ();
582582 const std::string _hdd = rpcs3::utils::get_hdd0_dir ();
583583
@@ -593,8 +593,8 @@ void game_list_frame::OnParsingFinished()
593593 const std::string localized_icon = fmt::format (" ICON0_%02d.PNG" , language_index);
594594 const std::string localized_movie = fmt::format (" ICON1_%02d.PAM" , language_index);
595595
596- const auto add_game = [this , localized_title, localized_icon, localized_movie, dev_flash, game_icon_path, _hdd,
597- cat_unknown_localized = localized. category .unknown .toStdString (), cat_unknown = cat::cat_unknown.toStdString (),
596+ const auto add_game = [this , localized, localized_title, localized_icon, localized_movie, dev_flash, game_icon_path, _hdd,
597+ cat_unknown_localized = localized-> category .unknown .toStdString (), cat_unknown = cat::cat_unknown.toStdString (),
598598 play_hover_movies = m_play_hover_movies, play_hover_music = m_play_hover_music, show_custom_icons = m_show_custom_icons]
599599 (const std::string& dir_or_elf, const std::string& game_dir = " PS3_GAME" )
600600 {
@@ -633,8 +633,6 @@ void game_list_frame::OnParsingFinished()
633633 game.info .path = dir_or_elf;
634634 game.info .game_dir = (game_dir == " PS3_GAME" ) ? " " : game_dir;
635635
636- const Localized thread_localized;
637-
638636 const std::string sfo_dir = (archive || !cache_entry.psf_data .empty ()) ? game_dir : rpcs3::utils::get_sfo_dir_from_game_path (dir_or_elf);
639637 const std::string sfo_path = sfo_dir + " /PARAM.SFO" ;
640638
@@ -697,7 +695,7 @@ void game_list_frame::OnParsingFinished()
697695 path_vfs = path_vfs.substr (pos);
698696 }
699697
700- if (const auto it = thread_localized. title .titles .find (path_vfs); it != thread_localized. title .titles .cend ())
698+ if (const auto it = localized-> title .titles .find (path_vfs); it != localized-> title .titles .cend ())
701699 {
702700 game.info .name = it->second .toStdString ();
703701 }
@@ -858,21 +856,21 @@ void game_list_frame::OnParsingFinished()
858856
859857 QString qt_cat = QString::fromStdString (game.info .category );
860858
861- if (const auto boot_cat = thread_localized. category .cat_boot .find (qt_cat); boot_cat != thread_localized. category .cat_boot .cend ())
859+ if (const auto boot_cat = localized-> category .cat_boot .find (qt_cat); boot_cat != localized-> category .cat_boot .cend ())
862860 {
863861 qt_cat = boot_cat->second ;
864862 }
865- else if (const auto data_cat = thread_localized. category .cat_data .find (qt_cat); data_cat != thread_localized. category .cat_data .cend ())
863+ else if (const auto data_cat = localized-> category .cat_data .find (qt_cat); data_cat != localized-> category .cat_data .cend ())
866864 {
867865 qt_cat = data_cat->second ;
868866 }
869867 else if (game.info .category == cat_unknown)
870868 {
871- qt_cat = thread_localized. category .unknown ;
869+ qt_cat = localized-> category .unknown ;
872870 }
873871 else
874872 {
875- qt_cat = thread_localized. category .other ;
873+ qt_cat = localized-> category .other ;
876874 }
877875
878876 game.localized_category = std::move (qt_cat);
0 commit comments