View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0001113||OpenMPT||[All Projects] General||public||2018-04-11 06:59||2018-04-15 16:49|
|Priority||normal||Severity||major||Reproducibility||have not tried|
|Target Version||Fixed in Version|
|Summary||0001113: Avoid delay-loading of libraries that we ship|
OpenMPT currently delay-loads soundtouch and mpg123.
This has the advantage of allowing to start mptrack.exe even without them being available.
However, in my opinion the disadvantages far outweigh the advantages:
|Tags||No tags attached.|
|Has the bug occurred in previous versions?|
|Tested code revision (in case you know it)|
We should also consider avoiding delay-loading MediaFoundation.
MediaFoundation is only enabled in modern OpenMPT builds which require Windows 7 which has MediaFoundation always available. All supported Wine versions at least implement a stub that properly exports all symbols and fails initialization, so we can detect that and continue. For Windows Server, MediaFoundation can be installed via a download from Microsoft. For the remote case of someone desiring to not have MediaFoundation installed for whatever reasons, they can always use the Win32old or Win64old builds.
Not delay-loading MediaFoundation has the advantage of completely avoiding the dependency on delayimp.lib.
Importance of having mpg123 non-optional increased in particular for OpenMPT with r10069 .