This clears up much of the todo list for mspatcha. GetFilePatchSignature* and NormalizeFileForPatchSignature have now been implemented in these changes.
These changes bring better support for things like the Adobe Acrobat installer without the need for things like the winetricks mspatcha.dll native dll override. Still needed is support for interleaved streams in the LZXD decompression logic, however this is a great start to better supporting software installers that use the Windows interface for creating and applying patches to files.
This is the beginning of the fixes required for bug 12501: https://bugs.winehq.org/show_bug.cgi?id=12501
--
v5: mspatcha: Add unit tests for NormalizeFileForPatchSignature and GetFilePatchSignature*
https://gitlab.winehq.org/wine/wine/-/merge_requests/3870
--
v2: winegstreamer: Also return output with 2 channels for multichannel inputs from AAC decoder.
winegstreamer: Validate maximum channel count in _SetInputType in AAC decoder.
winegstreamer: Correct output available types attrs in AAC decoder for channel count > 2.
winegstreamer: Handle missing or zero channel count in _GetOutputAvailableType in AAC decoder.
mf/tests: Add tests for AAC decoder with different input number of channels.
https://gitlab.winehq.org/wine/wine/-/merge_requests/3884
Patches for debug printing in the tests are also included in this MR. I've been maintaining a separate set of patches for this, but these would make it a lot easier for me or anyone else in the future to write tests IMO.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3890