pcaudiolib: fix CoInitialize to allow RPC_E_CHANGED_MODE - #29863
Conversation
Allow RPC_E_CHANGED_MODE
|
Need to add check for uninitialising. |
|
Looks like packages are not being built for testing. I guess I need to make this "ready for review" to get test packages? I'll try. |
Update maintainer name in PKGBUILD
|
Ok just need to test artifact next time I'm on Windows |
|
I have tested the package and it is fine. I think this is ready to release @lazka. |
|
This is a small change that fixes a bug. Please let me know what needs to happen for it to be merged. |
First, Second, I am not sure whether it is really OK to "ignore" a return code of And finally, if that is a bug in pcaudiolib, then it should probably be reported upstream: https://github.com/espeak-ng/pcaudiolib Maybe the folks over there can clarify how to fix this. |
Unfortunately on point 3, the espeak-ng/pcaudiolib devs have not responded to my original PR from when I first created the MSYS2 package: espeak-ng/pcaudiolib#34. They are essentially uninterested and unresponsive: espeak-ng/espeak-ng#2288 (comment) Currently this change is required for espeak-ng to work properly with SDL3 audio to which the Oolite UCRT64 based game was recently upgraded. However after researching further, I think you may be right about the overall safety of such a change in the general case so I will close this PR. |
XAudio2 requires Multi Threaded Apartment to work reliably. If it was pre-initialized as Single Threaded Apartment, an error code is returned RPC_E_CHANGED_MODE (0x80010106), but this can be safely ignored.