$NetBSD: patch-aa,v 1.3 1999/08/22 15:55:51 rh Exp $

--- src/lock.c.orig	Wed Jun 23 09:28:03 1999
+++ src/lock.c	Sun Aug 22 16:56:39 1999
@@ -18,6 +18,7 @@
 History:
 	970403	extracted from cache.c
 //////////////////////////////////////////////////////////////////////#*/
+#include <errno.h>
 #include <stdio.h>
 #include <sys/types.h>
 #include <errno.h>
@@ -144,6 +145,13 @@
 
 			start = Time();
 			rcode = callFuncTimeout(remain/1000,-1,func,fd);
+#ifdef EWOULDBLOCK
+			if (rcode == -1 && errno != EWOULDBLOCK) {
+				/* pretend lock succeeded */
+				rcode = 0;
+				break;
+			}
+#endif
 			elapse1 = (Time() - start) * 1000; 
 /*{
 static int n;
