https://bugs.winehq.org/show_bug.cgi?id=54109
Bug ID: 54109 Summary: schedsvc:rpcapi causes taskschd:scheduler to crash on w7u_adm Product: Wine Version: unspecified Hardware: x86-64 OS: Windows Status: NEW Severity: normal Priority: P2 Component: taskschd Assignee: wine-bugs@winehq.org Reporter: fgouget@codeweavers.com
When run on its own taskschd:scheduler fails on w7u_adm because of its insufficient privileges (see bug 54106).
But if schedsvc:rpcapi is run before, taskschd:scheduler crashes in test_FolderCollection() instead:
scheduler.c:349: Test failed: DeleteFolder error 0x80070091 scheduler.c:351: Test failed: DeleteFolder error 0x80070091 scheduler.c:354: Test failed: expected ERROR_FILE_NOT_FOUND, got 0x80070091 scheduler.c:450: Test failed: CreateFolder error 0x800700b7 scheduler.c:450: this is the last test seen before the exception 0a78:scheduler: unhandled exception c0000005 at 00403B53
See https://test.winehq.org/data/patterns.html#taskschd:scheduler
Where: 0x80070091 == HRESULT_FROM_WIN32(ERROR_DIR_NOT_EMPTY) 0x800700b7 == HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS)
This crash happens before the failures described in bug 54106 which explains why taskschd:scheduler fails one way for regular TestBot jobs (such as when testing merge requests) and another in the nightly WineTest runs.
https://bugs.winehq.org/show_bug.cgi?id=54109
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |source, testcase
https://bugs.winehq.org/show_bug.cgi?id=54109
--- Comment #1 from François Gouget fgouget@codeweavers.com --- The reason that schedsvc:rpcapi causes taskschd:scheduler to crash is that it leaves the \Wine task folder behind.
The issue is that, while one can create a task folder without elevated privileges on Windows 7, ITaskFolder::DeleteFolder() then fails to delete that folder. The same happens if going the manual route: rmdir /s c:\Windows\System32\Tasks\Wine
So it looks like schedsvc:rpcapi cannot be fixed to clean behind itself. If so the other options would be:
* Skip the tests if lacking elevated privileges *and* running on Windows 7. * Tweak the task tests so they all use different folder names so they don't interfere even if the each fail to clean up after themselves. But, iirc, we already have some tests that check if the cleanup went well and are failing :-(
https://bugs.winehq.org/show_bug.cgi?id=54109
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Fixed by SHA1| |bb516ae1a616b6454ebe494201c | |50690a811dc03 Status|NEW |RESOLVED
--- Comment #2 from François Gouget fgouget@codeweavers.com --- This is fixed:
commit bb516ae1a616b6454ebe494201c50690a811dc03 Author: François Gouget fgouget@codeweavers.com Date: Sun Mar 26 17:59:04 2023 +0200
schedsvc/tests: Deleting tasks & folders requires elevated privileges on Windows 7.
This means skipping any test that requires creating a folder as the test would be unable to clean up after itself.
Wine-Bug: https://bugs.winehq.org//show_bug.cgi?id=53128 Wine-Bug: https://bugs.winehq.org//show_bug.cgi?id=54109
https://bugs.winehq.org/show_bug.cgi?id=54109
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #3 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 8.6.