[REACTOS] Revert commit 32bdd85b7fb (incorrectly formatted)
authorStanislav Motylkov <x86corez@gmail.com>
Mon, 20 Nov 2023 17:50:06 +0000 (20:50 +0300)
committerStanislav Motylkov <x86corez@gmail.com>
Mon, 20 Nov 2023 17:50:06 +0000 (20:50 +0300)
base/applications/rapps/appview.cpp

index a34e9cd..004e162 100644 (file)
@@ -1289,13 +1289,14 @@ CAppsListView::AddApplication(CAppInfo *AppInfo, BOOL InitialCheckState)
         /* Load icon from registry */
         HICON hIcon = NULL;
         CStringW szIconPath;
-        int IconIndex;
         if (AppInfo->RetrieveIcon(szIconPath))
         {
-            IconIndex = PathParseIconLocationW(szIconPath.GetBuffer());
-            szIconPath.ReleaseBuffer();
+            PathParseIconLocationW((LPWSTR)szIconPath.GetString());
 
-            ExtractIconExW(szIconPath.GetString(), IconIndex, &hIcon, NULL, 1);
+            /* Load only the 1st icon from the application executable,
+             * because all apps provide the executables which have the main icon
+             * as 1st in the index , so we don't need other icons here */
+            hIcon = ExtractIconW(hInst, szIconPath.GetString(), 0);
         }
 
         /* Use the default icon if none were found in the file, or if it is not supported (returned 1) */
@@ -1305,7 +1306,7 @@ CAppsListView::AddApplication(CAppInfo *AppInfo, BOOL InitialCheckState)
             hIcon = LoadIconW(hInst, MAKEINTRESOURCEW(IDI_MAIN));
         }
 
-        IconIndex = ImageList_AddIcon(m_hImageListView, hIcon);
+        int IconIndex = ImageList_AddIcon(m_hImageListView, hIcon);
         DestroyIcon(hIcon);
 
         int Index = AddItem(ItemCount, IconIndex, AppInfo->szDisplayName, (LPARAM)AppInfo);