From ae9a07a8e0a5d0e83e138ef9bbd71b3e7e0072ea Mon Sep 17 00:00:00 2001 From: Jeffrey Altman Date: Fri, 23 Jun 2006 04:32:48 +0000 Subject: [PATCH] windows-cm_syncop-buflocked-20060622 If cm_SyncOp is called with the buffer locked, it must be returned locked even on error. --- src/WINNT/afsd/cm_scache.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/WINNT/afsd/cm_scache.c b/src/WINNT/afsd/cm_scache.c index cb28ef781..309f972e2 100644 --- a/src/WINNT/afsd/cm_scache.c +++ b/src/WINNT/afsd/cm_scache.c @@ -940,13 +940,13 @@ long cm_SyncOp(cm_scache_t *scp, cm_buf_t *bufp, cm_user_t *userp, cm_req_t *req /* we don't know the required access rights */ if (bufLocked) lock_ReleaseMutex(&bufp->mx); code = cm_GetAccessRights(scp, userp, reqp); - if (code) - return code; if (bufLocked) { lock_ReleaseMutex(&scp->mx); lock_ObtainMutex(&bufp->mx); lock_ObtainMutex(&scp->mx); } + if (code) + return code; continue; } } -- 2.39.5