Added IPC_HAS_METADATA_READ_SUPPORT & IPC_HAS_METADATA_WRITE_SUPPORT helper messages to quickly determine if the input plug-in responsible for a file type has the extended metadata api support for read / write
Added the 'Artist Index' filter option (which groups the filter results by the first letter of the artist) to the replacement local library plug-in (ml_ll.dll) based on forum feedback (if this works ok from testing then other variants of this index may be added e.g. album artist, genre, etc)
Added some additional resource usage information to the crash reports to help better detemine resource leak based crashes
Added resizing methods to api_albumart to complement the existing synchronous & asynchronous (WACUP addition) GetAlbumArt methods to simplify with getting artwork without each plug-in needing to do resizing if needed (this can also help reduce the overall memory usage if the artwork cache is enabled as the resized image is cached instead of the original "full fat" image that was loaded)
Added IPC_SHOWWND & IPC_HIDEWND api commands to explicitly be able to show / hide the specified windows (as determined by the IPC_GETWND parameter defines) along with some main window & library window additions for the older 2.9x era IPC_GETWND & IPC_ISWNDVISIBLE APIs)
Added compatibility support for the 3rd party "What's Playing?" plug-in so it will now make use of the settings folder instead of trying to save into the program folder (this is a shame it wasn't natively done when the plug-in was being updated until 2005 & the APIs needed were already a few years old by that time)
Changed the version string shown if there's nothing playing &/or no title can be shown under modern skins to now be the current WACUP version instead of the Winamp core version (this is more like classic skins though there's some parts under a classic skin that will currently show the wrong string - more work needs to be done on replacing all of the main window handling to resolve that discrepency)
Changed how output plug-in loading is done when opening the preferences window to try to minimise a configuration saving conflict between NotSoDirect & Nullsoft DirectSound (out_ds) plug-ins (to maintain compatibility for when the default output plug-in is switched to NotSoDirect they save into the same configuration section & without out_ds always re-saving it's settings on closing even if there was no change this can cause problems if NotSoDirect is the active output plug-in - recommendation is to disable out_ds if using NotSoDirect to avoid the whole issue :) )
Changed the way the installer is built to simplify some aspects of the overall building & release process which should save me some time :)
Changed how things are handled when a crash is detected which should better prevent unnecessary code (e.g. generic skinning) from running which might be causing some crash report collections to fail
Changed how the artwork cache works to better suit the common use case whilst making it less likely to have issues when dealing with more extremely sized pieces of artwork (not a commmon case)
Changed a number of the plug-ins to use the new api_albumart changes for resizing images to remove a number of potential issues when dealing with large artwork (especially with 12500x12500px images)
Fixed a taglib MP3 file length reading issue related to a patch applied to avoid invalid access breaking the end of file offset detection which is needed when trying to work out the duration of a file without appropriate headers as part of the file (aka guessing the file duration from it's size & reported bitrate which doesn't work if you're not using the correct file size)
Fixed issues with item selection in the main playlist editor incorrectly persisting compared to the wanted listview style handling the WACUP implementation is aiming for (e.g. selecting an item when items were already selected was meant to select the new item & de-select the others but that wasn't happening until this build fixes things)
Fixed stream titles not updating correctly (had missed a compatibility aspect when cleaning up some of the code with build 5424 oops)
Fixed another issue related to the handling (again) of IPC_PLAYFILEW_NDE API messages which was occassionally causing a crash
Fixed some menu integration issues compared to 5.666 for the replacement local library (ml_ll) & library playlists (ml_playlist) plug-ins along with removing the need for these plug-ins to subclass the playlist editor
Fixed the likely cause of a crash seen when a file is externally modified but is deemed to be related to WACUP (i.e. settings files not caught by the settings cache)
Fixed the bookmarks submenu on the 'File' menu under modern skins (that support that menu) not following the categorising options in all scenarios when the library plug-in is enabled
Fixed a crash when trying to play bookmarks via the 'File' menu under modern skins & not using the Library Bookmarks plug-in
Fixed the manual advance setting not being correctly saved when changed (related to the config read / write changes from a few beta builds back)
Fixed parts of the classic skin playlist editor window flickering (this affected windowshaded mode the most & also the normal mode selected item duration which is in the bottom right corner of the window)
Fixed some of the threaded actions not always releasing the handle associated with them which over the life time of a long running WACUP session could cause a potential resource handling issue
Fixed the probable cause of some issues seen when stopping the Classic Spectrum Analyzer (vis_classic.dll) visualiation plug-in which then cause the rest of WACUP to hang & eventually crash
Fixed an issue with the artwork cache not always clearing out prior cached data when being updated (this was causing issues viewing artwork in the Local Library views as well as some long running installs)
Fixed a formatting issue with the crash.log
Fixed a number of memory leaks related to the use of extreme sized artwork (e.g. 12500x12500px) causing problems across a number of the plug-ins making use of artwork
Fixed the exit menu action & keyboard shortcut not working correctly which once actioned would then cause other actions to fail (build 5454 specific issue)
Fixed the delayed loading of dbghelp.dll failing causing a repeating set of errors about dbghelp.dll not being able to be loaded (e.g. when in low memory scenarios & WACUP has crashed)
Updated libcurl (libcurl.dll) to 7.70.0 (29 Apr 2020)
Updated Monkey's Audio (in_ape.dll) to 5.38 (26 Apr 2020)
Updated OpenSSL (libcurl.dll) to 1.1.1g (21 Apr 2020)