From 52c1f712ecdeb7e02e8c4a4bc1bd5146898b277d Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Fri, 14 Nov 2014 23:36:18 +0100 Subject: [PATCH] upas/fs: handle cwfs "file is locked" error message --- sys/src/cmd/upas/fs/plan9.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sys/src/cmd/upas/fs/plan9.c b/sys/src/cmd/upas/fs/plan9.c index 5fb477a2a..7bc2ad47b 100644 --- a/sys/src/cmd/upas/fs/plan9.c +++ b/sys/src/cmd/upas/fs/plan9.c @@ -182,11 +182,13 @@ retry: fd = open(mb->path, OREAD); if(fd < 0){ rerrstr(err, sizeof(err)); - if(strstr(err, "exclusive lock") != 0 && n++ < 20){ - sleep(500); /* wait for lock to go away */ - goto retry; - } - if(strstr(err, "exist") != 0){ + if(strstr(err, "file is locked") != nil + || strstr(err, "exclusive lock") != nil) + if(n++ < 20){ + sleep(500); /* wait for lock to go away */ + goto retry; + } + if(strstr(err, "exist") != nil){ tmp = s_copy(mb->path); s_append(tmp, ".tmp"); if(sysrename(s_to_c(tmp), mb->path) == 0){