[PATCH 2/2] schedsvc: Retry opening a .job file only in case of sharing violation. (v2)
Dmitry Timoshkov
dmitry at baikal.ru
Tue Jun 12 08:41:25 CDT 2018
And turn loud ERR() into a TRACE() like it is in other places.
v2: fix a copy/paste typo.
Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
---
dlls/schedsvc/atsvc.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/dlls/schedsvc/atsvc.c b/dlls/schedsvc/atsvc.c
index f6ea0f0e23..b8adc7279d 100644
--- a/dlls/schedsvc/atsvc.c
+++ b/dlls/schedsvc/atsvc.c
@@ -558,7 +558,7 @@ static BOOL load_job(const WCHAR *name, struct job_t *info)
if (file == INVALID_HANDLE_VALUE)
{
TRACE("Failed to open %s, error %u\n", debugstr_w(name), GetLastError());
- if (try++ >= 3) break;
+ if (GetLastError() != ERROR_SHARING_VIOLATION || try++ >= 3) break;
Sleep(100);
continue;
}
@@ -872,9 +872,9 @@ static void update_job_status(struct job_t *job)
hfile = CreateFileW(job->name, GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, 0);
if (hfile != INVALID_HANDLE_VALUE) break;
- if (try++ >= 3)
+ if (GetLastError() != ERROR_SHARING_VIOLATION || try++ >= 3)
{
- ERR("Failed to update %s, error %u\n", debugstr_w(job->name), GetLastError());
+ TRACE("Failed to update %s, error %u\n", debugstr_w(job->name), GetLastError());
return;
}
Sleep(100);
--
2.16.3
More information about the wine-devel
mailing list