mfreadwrite: Fix an address of operator typo.
Merge request reports
Activity
requested review from @nsivov
Looks good. Maybe we could have some inlined function for type checking, under
__WINESRC__
. That's unrelated to this fix.Please add a test when url is not used, to test that mapping of MFTranscodeContainerType_WAVE works.
Edited by Nikolay Sivovadded 29 commits
-
555b87d1...cd9f3e5d - 26 commits from branch
wine:master
- f6e952c7 - mfreadwrite/tests: Add more tests for MFCreateSinkWriterFromURL.
- c134400e - mfreadwrite: Fix an address of operator typo.
- 48a3507c - mfreadwrite: Introduce create_sink_writer_from_factory.
Toggle commit list-
555b87d1...cd9f3e5d - 26 commits from branch
Marvin replied on the mailing list:
Hi, It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated. The tests also ran into some preexisting test failures. If you know how to fix them that would be helpful. See the TestBot job for the details: The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=132095 Your paranoid android. === w7u_2qxl (32 bit report) === mfreadwrite: mfplat.c:1499: Test failed: wav: Test 4: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 4: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 5: Unexpected hr 0xc00d36d5, expected 0. mfplat.c:1501: Test failed: wav: Test 5: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 6: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 6: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 7: Unexpected hr 0xc00d36d5, expected 0. mfplat.c:1501: Test failed: wav: Test 7: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 8: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 8: Unexpected writer pointer 00000000. === w7u_adm (32 bit report) === mfreadwrite: mfplat.c:1499: Test failed: wav: Test 4: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 4: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 5: Unexpected hr 0xc00d36d5, expected 0. mfplat.c:1501: Test failed: wav: Test 5: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 6: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 6: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 7: Unexpected hr 0xc00d36d5, expected 0. mfplat.c:1501: Test failed: wav: Test 7: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 8: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 8: Unexpected writer pointer 00000000. === w7u_el (32 bit report) === mfreadwrite: mfplat.c:1499: Test failed: wav: Test 4: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 4: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 5: Unexpected hr 0xc00d36d5, expected 0. mfplat.c:1501: Test failed: wav: Test 5: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 6: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 6: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 7: Unexpected hr 0xc00d36d5, expected 0. mfplat.c:1501: Test failed: wav: Test 7: Unexpected writer pointer 00000000. mfplat.c:1499: Test failed: wav: Test 8: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 8: Unexpected writer pointer 00000000. === w7pro64 (64 bit report) === mfreadwrite: mfplat.c:1499: Test failed: wav: Test 4: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 4: Unexpected writer pointer 0000000000000000. mfplat.c:1499: Test failed: wav: Test 5: Unexpected hr 0xc00d36d5, expected 0. mfplat.c:1501: Test failed: wav: Test 5: Unexpected writer pointer 0000000000000000. mfplat.c:1499: Test failed: wav: Test 6: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 6: Unexpected writer pointer 0000000000000000. mfplat.c:1499: Test failed: wav: Test 7: Unexpected hr 0xc00d36d5, expected 0. mfplat.c:1501: Test failed: wav: Test 7: Unexpected writer pointer 0000000000000000. mfplat.c:1499: Test failed: wav: Test 8: Unexpected hr 0xc00d36fa, expected 0. mfplat.c:1501: Test failed: wav: Test 8: Unexpected writer pointer 0000000000000000. === debian11 (32 bit report) === user32: win.c:10983: Test failed: GetForegroundWindow() = 00210148
This is going to another direction, unrelated to initial fix. I'm aware that for selected sinks classes are not created right away and logic seems to be hardcoded. But we don't really need to replicate that right now. For the test, I meant to have a call with ".wav" url to validate that CLSID is picked up.
There is a problem: if we don't delay create sink object, I don't know how to create it during writer initialization.
Take WAVE as example: we use IMFSinkClassFactory_CreateMediaSink() to create sink object, and IMFSinkClassFactory_CreateMediaSink() calls MFCreateWAVEMediaSink().
However, we must pass a valid media type argument to MFCreateWAVEMediaSink(), or this function fails. See tests here: https://gitlab.winehq.org/wine/wine/-/blob/master/dlls/mfsrcsnk/tests/mfsrcsnk.c#L84
What I mean is, after patch 2, we are still not able to successfully create WAV writter sink. Because for now, we pass a NULL media type to MFCreateWAVEMediaSink().
Edited by Ziqing Hui
added 1 commit
- d5f44c53 - mfreadwrite: Fix an address of operator typo.
added 18 commits
-
d5f44c53...e414561a - 17 commits from branch
wine:master
- d1c31772 - mfreadwrite: Fix an address of operator typo.
-
d5f44c53...e414561a - 17 commits from branch