no need to apologize... getting patches into Wine is always a bit constrained because of ensuring that we mimic Windows' behavior... and cmd is even more combersome as testing cmd is even more constrained
for testing, you can subscribe to testbot.winehq.org (there you can test on several windows versions)
I recommend if you can test first locally (your Win10 setup is a good choice), then run the changes in testbot for all default test env (anyway the patch will be tested in the integration pipeline against these, so better test in advance), then update the MR...
concerning your failing code, you could use:
```
cmd /c `block_if_eof1.cmd`
```
with a comment explaining why you need to enclose the test inside another instance of cmd
(and I don't thing there's lot of value to check %errorlevel% upon cmd exit)
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4168#note_49967
typelib has an array size of 2 (eg LibXml_Last), so a lookup
of IID_NULL will result in a lookup of the third index.
--
v6: msxml3: Do not leak bind context on error paths (Coverity)
https://gitlab.winehq.org/wine/wine/-/merge_requests/4073
Okay, oh dear. I need to apologize it's the first time I contribute to wine and as always the user learns over time.
Now I have the build environment on a Windows 10 Machine set up and I can run the testbench on Windows as well. Cool feature!
Lesson learned:
I focussed on the unbalanced parentheses case first. Windows quits/ends the complete `cmd` execution if it do a `call block_if_eof1.cmd`. Did you have this case yet? In regards of testing this means I need to setup a own `.cmd`/`.cmd.exp` file again?
Lets form a simple setup
```
echo @echo off>block_if_eof1.cmd
echo echo sanity1>>block_if_eof1.cmd
echo if 1 == 1 (>>block_if_eof1.cmd
echo echo should not be executed>>block_if_eof1.cmd
call block_if_eof1.cmd
REM This command is NEVER executed as cmd exe quited.
```
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4168#note_49957
On Thu Oct 26 17:31:50 2023 +0000, eric pouech wrote:
> nitpick: you could have saved one line of modif by keeping the == 0x00
> test (instead of rewritten to 0x0)
Can fix that as well. No Problem must have happened while fixup.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4168#note_49956
typelib has an array size of 2 (eg LibXml_Last), so a lookup
of IID_NULL will result in a lookup of the third index.
--
v5: msxml3: Free IBindCtx on error paths (Coverity)
msxml3: Move tid_NULL out of possible enum values.
msxml3: Dont call qsort if we have no data (Coverity).
https://gitlab.winehq.org/wine/wine/-/merge_requests/4073