On Mon Jul 17 09:13:57 2023 +0000, Vladislav Timonin wrote:
My suspicion is that there are two different session list instances. `audiosessionmanager.c` and `client.c`, the only places where `get_audio_session`/`get_audio_session_wrapper` are used, end up getting their own session list. The only place in tests where both `IAudioSessionManager` and `IAudioClient` are used is `test_session_creation`. And because they should be using the same session list, and they're not, it fails. Unfortunately I'm not good enough to know how to fix this >_>
Right before reading your comment I realized that every target building `session.c` ends up getting its own session list. Your suspicion is spot-on.
Also, your proposed fix is good: let's keep `AUDDRV_GetAudioSessionWrapper` until we move `GetAudioEndpoint` into `mmdevapi`.