From 09a67eee1921c9677a54840420d0d13e28b49941 Mon Sep 17 00:00:00 2001
From: Leon Styhre <leon@leonstyhre.com>
Date: Fri, 1 Jan 2021 13:06:05 +0100
Subject: [PATCH] Fixed an issue where custom collections were sometimes not
 properly updated after game metadata changes.

---
 es-app/src/CollectionSystemsManager.cpp | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/es-app/src/CollectionSystemsManager.cpp b/es-app/src/CollectionSystemsManager.cpp
index 6429b2765..522174808 100644
--- a/es-app/src/CollectionSystemsManager.cpp
+++ b/es-app/src/CollectionSystemsManager.cpp
@@ -364,12 +364,20 @@ void CollectionSystemsManager::updateCollectionSystem(FileData* file, Collection
             }
             else if (curSys->isCollection() && !file->getCountAsGame()) {
                 // If the countasgame flag has been set to false, then remove the game.
-                if (curSys->isGroupedCustomCollection())
+                if (curSys->isGroupedCustomCollection()) {
                     ViewController::get()->getGameListView(curSys->getRootFolder()->getParent()->
                             getSystem()).get()->remove(collectionEntry, false);
-                else
+                    FileData* parentRootFolder =
+                            rootFolder->getParent()->getSystem()->getRootFolder();
+                    parentRootFolder->sort(parentRootFolder->getSortTypeFromString(
+                            parentRootFolder->getSortTypeString()), mFavoritesSorting);
+                }
+                else {
                     ViewController::get()->
                             getGameListView(curSys).get()->remove(collectionEntry, false);
+                }
+                rootFolder->sort(rootFolder->getSortTypeFromString(
+                        rootFolder->getSortTypeString()), mFavoritesSorting);
             }
 
             else {