The added tests are failing here on Windows 11: ``` info.c:3333: Test failed: Expected ret_len == 1, got deadbeef info.c:3338: Test failed: Expected ret_len == 1, got deadbeef ```
That's both with 32 and 64 bit tests.
That's weird of course because the previous test with the same parameters but invalid return length address does give STATUS_ACCESS_VIOLATION, suggesting it accessed the *ret_len before check (for read??) but then if length check didn't succeed it didn't set output length.
Not sure what to do with it, I don't see the sane reason to, e. g., read from output ret_len paramater. Maybe we can fix the test (expecting 0xdeadbeef where Windows returns it) and add if (ret_len) *(voltaile BOOLEAN *)ret_len |= 0; at start of ThreadHideFromDebugger handling (adding a comment that the app (specifying which) depends on returning STATUS_ACCESS_VIOLATION on unaccessible ret_len before instead of moving actual assignment. Unless maybe it is possible to find out a sane reason to access *ret_len before setting it.
Also, first patch should be better named as "ntdll/tests: Add tests for ret_len on NtQueryInformationThread HideFromDebugger." (ming /tests and period in the end), also '.' in the end of the first patch name.