-
Aaron Hill authored
When a BITS job is being transferred, it may enter into the state BG_JOB_STATE_TRANSIENT_ERROR (for example, if the hostname fails to resolve). Currently, entering this state causes qmgr job tests to fail, even though it may occur due to temporary network issues out of our control. If a job enters BG_JOB_STATE_TRANSIENT_ERROR before the timeout has elapsed, attempt to resume the job using IBackgroundCopyJob_Resume. If the job is still in BG_JOB_STATE_TRANSIENT_ERROR, query BITS for detailed error information, and print it out. Additionally, ensure that we are able to transfer files on Windows 10 with a metered connection. By default, BITS will not attempt to transfer a job on a metered connection, instead failing with BG_JOB_STATE_TRANSIENT_ERROR. On newer versions of Windows, we can use IBackgroundCopyJob5 to set the transfer policy, forcing the job to run even on a metered connection. This allows qmgr job tests to pass on the testbot Windows 10 VMs, which have metered connections enabled in order to disable Windows Update. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50048Signed-off-by: Aaron Hill <aa1ronham@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
25380774