Skip to content

Commit ace6cd2

Browse files
committed
Qt: Use temporary game list entry for properties of playlists
Doesn't provide full functionality, but this is not a supported setup and it's better than only making the first disc accessible.
1 parent bff1f47 commit ace6cd2

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

src/core/fullscreenui_settings.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1647,7 +1647,9 @@ bool FullscreenUI::SwitchToGameSettingsForPath(const std::string& path, Settings
16471647
{
16481648
auto lock = GameList::GetLock();
16491649
const GameList::Entry* entry = !path.empty() ? GameList::GetEntryForPath(path) : nullptr;
1650-
if (!entry || entry->serial.empty())
1650+
1651+
// playlists will always contain the first disc's serial, so use the current game instead
1652+
if (!entry || entry->serial.empty() || entry->type == GameList::EntryType::Playlist)
16511653
{
16521654
Host::RunOnCoreThread([page]() {
16531655
Error error;

src/duckstation-qt/mainwindow.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2782,7 +2782,9 @@ void MainWindow::openGamePropertiesForCurrentGame(const char* category /* = null
27822782
// show for first disc instead
27832783
entry = GameList::GetFirstDiscSetMember(entry->dbentry->disc_set);
27842784
}
2785-
if (entry)
2785+
2786+
// playlists will always contain the first disc's serial, so use the current game instead
2787+
if (entry && entry->type != GameList::EntryType::Playlist)
27862788
SettingsWindow::openGamePropertiesDialog(entry, category);
27872789
else
27882790
g_core_thread->openGamePropertiesForCurrentGame(category ? QString::fromUtf8(category) : QString());

0 commit comments

Comments
 (0)