-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GameList: Allow recursive scans to be cancelled #12359
Conversation
bd7762f
to
0b018c9
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested on Windows and macOS, both work fine.
A month or two ago I was looking to see if there would be some sort of filesystem API that could tell you the amount of sub directories (and sub sub directories) in a directory, and warn when it's larger than a threshold. iirc the only solution is to recursively scan yourself, which is part of the issue in the first place lol
------------------------------------------------------------------------------------ citra.mk bc645bb4dd1714cedb19dc2159105afe630ca080 # Version: Commits on Mar 02, 2025 ------------------------------------------------------------------------------------ externals: sdl2 2.32.2, ------------------------------------------------------------------------------------------ dolphin-emu.mk fd2766f5dfd9096cc826d51532ae522d5e3680b0 # Version: Commits on Mar 01, 2025 ------------------------------------------------------------------------------------------ Translation resources sync with Transifex, ------------------------------------------------------------------------------------------ duckstation.mk 859f5090c80f32811e0d0c459269cd2e48730b54 # Version: Commits on Mar 02, 2025 ------------------------------------------------------------------------------------------ FullscreenUI: Update translation strings, ---------------------------------------------------- pcsx2.mk v2.3.190 # Version: Commits on Mar 02, 2025 ---------------------------------------------------- - [GameList: Allow recursive scans to be cancelled](PCSX2/pcsx2#12359) ------------------------------------------------------------------------------------- ppsspp.mk d507cc43e2f3b753c09a9b8c42807ef810c6b6df # Version: Commits on Mar 01, 2025 ------------------------------------------------------------------------------------- Merge pull request #20055 from hrydgard/fix-more-png-issues libpng: Ignore benign errors., --------------------------------------------------------- python-pyxel.mk v2.3.7 # Version: Commits on Mar 02, 2025 --------------------------------------------------------- Updated the WASM wheel to version 2.3.7, ------------------------------------------------------------------------------------ rpcs3.mk 1dc3ebf891d29a7cd31c940e4ba8aaf987421bce # Version: Commits on Mar 02, 2025 ------------------------------------------------------------------------------------ SPU Analyzer: A fixup for crash, TODO: proper fix, --------------------------------------------------------------- ruffle.mk nightly-2025-03-02 # Version: Commits on Mar 02, 2025 --------------------------------------------------------------- ## What's Changed * core: Remove double pointers in `EditText` by @kjarosh in ruffle-rs/ruffle#19663 * desktop: Disable unused-mut warning on non-Linux builds by @evilpie in ruffle-rs/ruffle#19673 **Full Changelog**: ruffle-rs/ruffle@nightly-2025-03-01...nightly-2025-03-02, -------------------------------------------------------------------------------------- shadps4.mk 0bdd21b4e49c25955b16a3651255381b4a60f538 # Version: Commits on Mar 01, 2025 -------------------------------------------------------------------------------------- Fix list after deleting a game (#2577), --------------------------------------------------------------------------------------------- solarus-engine.mk 654b973c46717b8ca498e2def056c1e28a58bd1d # Version: Commits on Mar 01, 2025 --------------------------------------------------------------------------------------------- Add a locked field to map entities, only used by the editor ------------------------------------------------------------------------------------- vita3k.mk f2968fab1108af0a47afd0a05613536d19e67081 # Version: Commits on Feb 26, 2025 ------------------------------------------------------------------------------------- renderer: fixed dxgi apply for BC2_UNORM format, -------------------------------------------------------- sdl3.mk release-3.2.6 # Version: Commits on Mar 02, 2025 -------------------------------------------------------- Added testpen to the Xcode test project, ------------------------------------------------------------------------------------------ dxx-rebirth.mk d96665375a8bd273dcc0d0b21c87249861b0e00f # Version: Commits on Mar 01, 2025 ------------------------------------------------------------------------------------------ properties_init: use case-insensitive search for BITMAPS.BIN Descent 1 v1.0 ships `bitmaps.bin`, not `BITMAPS.BIN`. To complicate the situation, it also ships broken fallback data, so if Rebirth does not find and use `bitmaps.bin`, then the game crashes: ``` terminate called after throwing an instance of 'partial_range_t<dcx::polymodel*, dcx::polygon_model_index>::partial_range_error' what(): similar/main/bm.cpp:212: end 3351824328 past 0x5555557b5b48 end 85 \Polygon_models\ ``` Switch back to using a case-insensitive search, so that Rebirth detects `bitmaps.bin` and reads that instead of the broken fallback data. Reported-by: retrogamedesigner <dxx-rebirth/dxx-rebirth#812> Fixes: 5c514df2177e055b354e7c3657c38f80ecf95b44 (\Require exact case for `BITMAPS.TBL`, `BITMAPS.BIN`\), ------------------------------------------------------------------------------------------- jazz2-native.mk ef95eed34955d94b0cf78d14524e17375f248ae1 # Version: Commits on Mar 02, 2025 ------------------------------------------------------------------------------------------- Multiplayer, refactoring, --------------------------------------------------------------------------------------------------- mupen64plus-gliden64.mk 42129aadb16e0fb0e9c265ee134dbc7f9c4022e6 # Version: Commits on Feb 16, 2025 --------------------------------------------------------------------------------------------------- GLideNHQ: fix build with gcc 15 Gentoo Issue: https://bugs.gentoo.org/949732, ---------------------------------------------------------------------------------------- retroarch.mk f2a86f34d136952be35cdbde42335d27cb15e774 # Version: Commits on Mar 02, 2025 ---------------------------------------------------------------------------------------- Remove unnecessary rigmarole around importing the script as a blob (#17642), ----------------------------------------------------------------------------------- qrtr.mk 5923eea97377f4a3ed9121b358fd919e3659db7b # Version: Commits on Mar 01, 2025 ----------------------------------------------------------------------------------- Merge pull request #35 from minlexx/lookup-new-smgr-ids lookup: add Sensor Manager (SMGR) service IDs, ---------------------------------------------------------------------------------------- doomretro.mk c2e3514c66d2f8ea81ad55b2cd3c9f3084546421 # Version: Commits on Mar 02, 2025 ---------------------------------------------------------------------------------------- Update to SDL_image v2.8.6, -------------------------------------------------------------------------------------- vkquake.mk 223285940c62e53c307f49bf133af468b46eb00a # Version: Commits on Mar 02, 2025 -------------------------------------------------------------------------------------- update windows SDL2 to latest official 2.32.2 version., ---------------------------------------------------------------------------------------------- libretro-ppsspp.mk d507cc43e2f3b753c09a9b8c42807ef810c6b6df # Version: Commits on Mar 01, 2025 ---------------------------------------------------------------------------------------------- Merge pull request #20055 from hrydgard/fix-more-png-issues libpng: Ignore benign errors., --------------------------------------------------------------------------------------------------- libretro-squirreljme.mk 359625848abd36c763ff746ff3914c37d144c4de # Version: Commits on Mar 01, 2025 --------------------------------------------------------------------------------------------------- Organize more bytecode test and correct tests due to moving around.,
Description of Changes
We get a lot of users that accidentally tell PCSX2 to recursively scan massive directories (e.g. home directory) and then complain about it freezing. Looks like this is caused by gamelist scanning not being cancellable while it scans directories (only when scanning the files in those directories), so if anything asks the gamelist scan to cancel and then waits for it to finish, it ends up waiting for a long time.
Rationale behind Changes
Less freezing, though it means people who do this won't come to us for help and will therefore never find out why PCSX2 spends tons of CPU scanning directories in the background whenever they open it. Maybe we should add a warning if we notice a scan has been going on for some large amount of time asking the user if they want to set the directory to non-recursive...
Suggested Testing Steps