[PATCH 1/2] xaudio2: Fix support for FAudio 19.06 and newer

Józef Kucia joseph.kucia at gmail.com
Wed May 1 14:28:35 CDT 2019


On Wed, May 1, 2019 at 8:51 PM Ethan Lee <elee at codeweavers.com> wrote:
>
> I could add F3DAudioInitialize8 separately, but it would mean everybody has to update to 19.05.0x for that def to go away, so the packaging situation doesn’t improve much there. I could possibly do something like FAPOFX_Create7 (well, it could be 5 since it’s xapofx1_5, but it could also be 7 since it’s the XAudio 2.7 spec…?) but that just makes FAudio’s API really confusing, since we would have some of the spec targeting 2.7 with 2.8+ as extension methods and other parts targeting 2.8 with 2.7- as extension methods. The real killer is CommitChanges, which is for sure stuck since it was an entirely bogus function and the old version should not exist at all. I could _maybe_ write in something like...

It's unfortunate that FAudio was released with bogus CommitChanges().
However, ABI compatibility shouldn't be broken that lightly. The right
thing to do is to introduce a new version of the function with a
different name. The old version of function could probably assume that
OperationSet is set to FAUDIO_COMMIT_ALL.



More information about the wine-devel mailing list