I've added tests to check what happens with different errors at different stages, also now the fix is implemented for all the functions (only two) that use `session_subscribe_sources`
Now, I'm having a hard time trying to create the second source so I can test what happens when the first source succeeds to subscribe and the second one fails. I'm getting an E_UNEXPECTED error when calling IMFMediaSession_Start so that makes it harder to debug.