CompactGUI icon indicating copy to clipboard operation
CompactGUI copied to clipboard

CompactGUI 3.0a5 crashes on validation of some Steam games folders

Open biscotteman opened this issue 2 years ago • 9 comments

OS: Win10 21h2 build 19044.1741

I have 3 SteamLibrary folders on differents HDDs. The paths are as follow: C:\Steam\SteamApps\common D:\SteamLibrary\steamapps\common G:\SteamLibrary\steamapps\common

On the second folder (D:), every time I'm trying to select a game folder, the program crashes right after. No issue on the games folders of others HDD.

.NET Framework event log:

CoreCLR Version: 6.0.522.21309
.NET Version: 6.0.5
Description: The process was terminated due to an unhandled exception.
Exception Info: System.InvalidOperationException: Cannot access child value on Gameloop.Vdf.Linq.VValue.
   at Gameloop.Vdf.Linq.VToken.get_Item(Object key)
   at CompactGUI.Helper.GetSteamNameAndIDFromFolder(String path)
   at CompactGUI.Helper.GetSteamIDFromFolder(String path)
   at CompactGUI.MainWindow.SelectFolder(String path)
   at CompactGUI.MainWindow.SearchClicked(Object sender, MouseButtonEventArgs e)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
   at System.Windows.Input.InputManager.ProcessStagingArea()
   at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
   at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
   at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.Run()
   at System.Windows.Application.RunDispatcher(Object ignore)
   at System.Windows.Application.RunInternal(Window window)
   at System.Windows.Application.Run()
   at CompactGUI.Application.Main()

biscotteman avatar Jun 17 '22 14:06 biscotteman

Can you give me an example of which game it crashes on? Can you also send a copy of the game's appmanifest_XXXXX.acf file (located in the steamapps folder before common)

Iridium-IO avatar Jun 18 '22 04:06 Iridium-IO

I do have a similar issue, I also have 3 steam game folders : C:\Program Files (x86)\Steam\steamapps\common C:\Users\Drigtime\Games\SteamLibrary\steamapps\common D:\Games\SteamLibrary\steamapps\common

I have Forza Horizon 5 in C:\Users\Drigtime\Games\SteamLibrary\steamapps\common and when I select the game folder and click "analyze" Compact crashed instantly.

I don't have any .Net error log, only CompactGUI log :

Faulting application name: CompactGUI.exe, version: 3.0.0.0, time stamp: 0x62571213
Faulting module name: KERNELBASE.dll, version: 10.0.19041.572, time stamp: 0x1183946c
Exception code: 0xe0434352
Fault offset: 0x0000000000023e49
Faulting process id: 0x2314
Faulting application start time: 0x01d88356b029dd8f
Faulting application path: C:\Users\Drigtime\Downloads\CompactGUI.exe
Faulting module path: C:\Windows\System32\KERNELBASE.dll
Report Id: f71bc9a3-9ab2-43fc-a842-9b1ca03930e4
Faulting package full name: 
Faulting package-relative application ID: 

And here is my appmanifest_1551360.acf :

"AppState"
{
	"appid"		"1551360"
	"Universe"		"1"
	"LauncherPath"		"C:\\Program Files (x86)\\Steam\\steam.exe"
	"name"		"Forza Horizon 5"
	"StateFlags"		"4"
	"installdir"		"ForzaHorizon5"
	"LastUpdated"		"1655569471"
	"SizeOnDisk"		"106891750205"
	"StagingSize"		"0"
	"buildid"		"8596821"
	"LastOwner"		"76561198131370935"
	"UpdateResult"		"0"
	"BytesToDownload"		"103136"
	"BytesDownloaded"		"103136"
	"BytesToStage"		"265504"
	"BytesStaged"		"265504"
	"TargetBuildID"		"8596821"
	"AutoUpdateBehavior"		"0"
	"AllowOtherDownloadsWhileRunning"		"0"
	"ScheduledAutoUpdate"		"0"
	"StagingFolder"		"1"
	"InstalledDepots"
	{
		"1551361"
		{
			"manifest"		"2482787878798132324"
			"size"		"106891750205"
		}
	}
	"InstallScripts"
	{
		"1551361"		"installscript.vdf"
	}
	"SharedDepots"
	{
		"228988"		"228980"
		"228990"		"228980"
	}
	"UserConfig"
	{
		"language"		"english"
	}
	"MountedConfig"
	{
		"language"		"english"
	}
}

Drigtime avatar Jun 18 '22 21:06 Drigtime

@Drigtime I think your issue is different, and due to the fact that Forza Horizon 5 had no user submissions but had a blank entry in the database file. I've fixed this now (including for about 50 other games) Can you try deleting %localappdata%/IridiumIO and seeing if that fixes it for you?

Iridium-IO avatar Jun 19 '22 02:06 Iridium-IO

Can you try deleting %localappdata%/IridiumIO and seeing if that fixes it for you?

That was it, thank you 👍 And I apologize for posting there instead of creating a new issue, I thought biscotteman and I had the same problem

Drigtime avatar Jun 19 '22 08:06 Drigtime

@Drigtime No worries, I also thought they were the same issue until I tested your acf file :)

Iridium-IO avatar Jun 19 '22 09:06 Iridium-IO

Can you give me an example of which game it crashes on? Can you also send a copy of the game's appmanifest_XXXXX.acf file (located in the steamapps folder before common)

Sorry about the delay! It seems that my notifications weren't configured correctly... So I've downloaded the new version 3.0a6, still no luck, the same error is present I've tried on Dying Light (appId 239140), Tekken 7 (389730) and Insurgency Sandstorm (581320), all 3 were correctly working in the previous version 2.6.2 For the acf files, see appmanifest.zip I'm not quite sure it's directly linked to the games, since all the games on the D: drive are seemingly failing

biscotteman avatar Jun 28 '22 07:06 biscotteman

My guess is that one of the appmanifest files in that D drive is broken and when CompactGUI goes through them all, it crashes as a result. Can you try moving all of the acf files out of the folder except one of the ones for the game you want to compress (e.g leave 389730 if you're going to try Tekken 7) and then try again? If it works then the next step is working out which file is the broken one.

Iridium-IO avatar Jul 02 '22 16:07 Iridium-IO

You're right! Moving all acf files except one did the trick. I've managed to find the acf file that's corrupted (223470), no idea how that happened. I've deleted it and recreated it through Steam, everything is working fine now :) Thanks for your help!

biscotteman avatar Jul 02 '22 18:07 biscotteman

I can confirm that this is due to broken acf files. Found multiple in my installation that were able to be fixed by triggering a reinstall of the game.

Attached my broken files, just in case they could be useful for testing.

Broken ACFs.zip

soxhi8 avatar Feb 16 '23 22:02 soxhi8