Added an option on the Taskbar preferences page to control whether WACUP is hidden from the taskbar or not when minimised (this has been defaulted to on to replicate the Winamp behaviour for this action)
Added a workaround to deal with crashes seen by the WaveOut Output plug-in (out_wave.dll)
Added a specific sort by duration action to the main playlist editor & library playlist views
Added a specific mode on the Visualisation preferences page to disable visualisation loading (this is like the equivalent mode on the DSP/Effect preferences page)
Added an option for the Discord support to automatically disable it when playback has stopped (this can allow other programs to update your Discord Rich Text without also having to close WACUP)
Changed a massive amount of the main playlist editor & playlist & related API support to now be handled via WACUP code instead of using the original Winamp code (there might be some issues / differences in behaviour that I've missed so please do tell me so I can get the compatibility / expected behaviour re-implemented)
Changed how the Windows 10 Integration plug-in (gen_win10shell.dll) is allowed to be loaded to hopefully prevent it crashing for some
Changed the installer to better handle not having an internet connection or if not allowed through the firewall by giving a useful message on what needs to be done or what can be done to workaround the issue
Changed the the Portables plug-in to not have the settings cache applied to it which may help fix some of the odder crash reports seen
Changed the Cover & Tag plug-in handling for finding the built-in windows to be applied more generically to fix some other plug-ins including cases when changing the main window class & plug-ins have a hard-coded assumption of it being "Winamp v1.x"
Changed the installer to deal with most of the downloaded components & related validation in a simpler manner which should cause fewer issues going forward
Changed new installs to default to requiring the user if they later install the Sqrsoft Output plug-in (out_sqr.dll) to require it to be manually enabled before it can be used (the plug-in is causing a load of crash reports)
Changed the handling of failed HTTP stream playback to attempt to use the MP3 Decoder (in_mp3.dll) if that wasn't the plug-in already attempting to be used (e.g. builds of the 3rd party in_opus.dll plug-in will incorrectly try to handle any HTTP stream url even if it's not related to what the plug-in supports)
Changed how some of the required file paths are generated to use less code & to be correct irrespective of the owner process that is calling WACUP core methods
Changed the settings cache to pre-prime itself earlier which helps alleiviate some oddities noticed
Changed the way the font size in the information pane of the podcasts view is calculated to try to better match with the rest of WACUP irrespective of OS scaling
Changed some of the Playlist Undo plug-in handling to be done directly within the WACUP core (more will be done to move the plug-in completely into the WACUP core)
Changed how the NotSoDirect output plug-in saves it's settings to reduce unnecessary configuration saves when nothing has been changed
Changed the installer to not attempt to re-install some of the supporting files that WACUP relies upon if they're already present (this may help with some setups where updating can fail due to files not being able to be updated primarily to anti-virus &/or 3rd party software messing with things)
Changed the plug-in loaded to block a few more plug-ins that are known to cause crashes &/or conflict with the native WACUP implementation (e.g. in_wm, gen_nopro & gen_skinmanager)
Changed the podcast view initial loading to show a message until everything is ready (this is related to helping resolve the deadlock on loading crash below)
Changed to use a shared genre list between the plug-ins / libraries for a 14KB size reduction
Changed the icons in the library window navigation tree, internet radio & podcast feeds list to adjust to the size of the list text so they better match & looks better with larger font sizes (note they will be blurry until higher resolution base images are created)
Changed the input, general, library, dsp, visualisation & portable plug-in preference pages to use the newer style list layout like the output plug-in list for consistency
Changed as many of the preference pages provided via the Winamp core to now be WACUP implementations (this means most settings are now only altered when actually changed instead of being always saved when closing the preferences window which reduces the risk of data loss / settings file corruptions & so on)
Changed how background title reading is done to try to avoid hangs related to URL / UNC paths
Changed the error reporter handling to avoid attempting to also send the crash report as an email if there's no obviously configured default email client
Fixed a workaround to deal with crashes seen by the DirectSound Output plug-in (out_ds.dll) not working as expected in all scenarios
Fixed a crash in the Vorbis Decoder plug-in (in_vorbis.dll) if the supporting libvorbis.dll cannot be loaded when trying to play an OGG Vorbis file
Fixed trying to use Milkdrop's (somewhat broken) desktop causing a crash due to the required vms_deskop.dll not being correctly installed for it to use
Fixed a crash when trying to generate the skin folder / filepath for the IPC_SKIN_CHANGED_NEW API message via the skins manager preference page
Fixed a crash related to column name retrieval within NDE in relation to a potential database corruption
Fixed the likely cause of a crash seen when trying to retrieve artwork for the SMTC (Windows 10) feature
Fixed the likely cause of a crash when accessing the config / about dialog of the FLAC input plug-in (based on a delay loading related issue from the crash reports)
Fixed a message handling issue in the History library plug-in preventing it correctly saving it's database on periodic save requests
Fixed the current playlist item not being drawn in the windowshaded playlist editor mode once focus has been lost along with resolving a flickering when resizing the window in that state
Fixed a potential lock-up on loading if the JTFE media library integration is enabled & the library window is slow to be created
Fixed reading of metadata from files not showing the expected data in some cases due to a replacement method not always providing the correct status result causing the valid metadata to be ignored
Fixed the likely cause of a crash seen when using the 'Open / Add file(s) to playlist' action & trying to process a playlist (or so it seemed from the crash report)
Fixed a number of crash issues related to a mis-match in the memory methods of the C run time libraries being used between the WACUP core & some of the plug-ins (especially the replacement local library plug-ins & the 'Edit Item Metadata' (Shift+E) dialog in the main playlist editor)
Fixed library playlists incorrectly showing some stream urls as missing when that check only relates to non-stream content
Fixed the title of items when being bookmarked sometimes showing as giibberish (have dropped trying to use the existing Winamp code for WACUP replacement which behaves as expected)
Fixed podcast feeds without the expected XML declaration at the start of their feed not being able to be added (this now does an alternative check which should work for both RSS & ATOM feeds showing this issue)
Fixed the podcast view sometimes failing to load correctly & eventually causing a loading deadlock crash
Fixed the vertical divider in the podcast view incorrectly showing when the information area is the only thing showing
Fixed some issues related to metadata retrieval not working as expected due to incorrect API responses
Fixed the Streaming Url Processing plug-in often reporting an incorrect title if it's not been used to play a stream it supports during the running WACUP session (this was causing issues with some of the re-worked checks to minimise re-saving the contents of the main playlist to reduce overall closing times)
Fixed the output plug-in preferences page list not looking correct depending on the OS text scaling mode being used (things should now gracefully adjust for the size of the list item)
Fixed an issue sometimes preventing a visualisation plug-in from being re-started if already used during that session
Fixed enabling/disabling plug-ins via the plug-in preference pages incorrectly selecting the plug-in when it should not have been (this would be an issue on the output, dsp & visualisation pages where the selected item determines the active plug-in)
Fixed the plug-in preference page lists not sizing correctly to the visible area including showing a horizontal scrollbar incorrectly at times
Fixed the selection not always being scrolled into view in the browse for folder dialogs (this was a regression related to build 4994 changes)
Fixed a number of the windows not restoring their position compared to how 5.666 worked (e.g. the Add/Open File/Url dialogs)
Fixed some of the bundled modern skins not correctly showing as the WACUP version due to a missing file used for install type checking
Fixed the crash reporter dialog not reacting to Escape / Alt+F4 actions as expected once the crash report collection has been completed
Fixed the undo playlist dialog not being correctly sized according to OS text scaling / high-dpi setups
Other small changes to attempt to fix some of the issues based on information from the received crash reports (e.g. library playlists & ASIO output)
Updated brotli (libcurl.dll) to latest Git commit from 19 Mar 2020
Updated libcurl (libcurl.dll) to 7.69.1 (11 Mar 2020)
Updated OpenSSL (libcurl.dll) to 1.1.1e (17 Mar 2020)
Updated Monkey's Audio (in_ape.dll) to 5.24 (21 Mar 2020)
Updated unrar (unrar.dll) to 5.90.2 (26 Mar 2020)
Updated vgmstream (in_vgmstream.dll) to the latest Git commit from 5 Apr 2020
Updated zlib-ng (zlib.dll) to latest re-based update (27 Mar 2020)