From 7e9e092da8d0c91c8075d9f0a4b1700de8f46753 Mon Sep 17 00:00:00 2001 From: rsc Date: Mon, 2 May 2005 04:20:14 +0000 Subject: Correct putsnarf-then-getsnarf race. --- src/libdraw/x11-itrans.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src') diff --git a/src/libdraw/x11-itrans.c b/src/libdraw/x11-itrans.c index 8b1c1376..041580ad 100644 --- a/src/libdraw/x11-itrans.c +++ b/src/libdraw/x11-itrans.c @@ -374,6 +374,12 @@ _xgetsnarf(XDisplay *xd) XWindow w; qlock(&clip.lk); + /* + * Have we snarfed recently and the X server hasn't caught up? + */ + if(_x.putsnarf != _x.assertsnarf) + goto mine; + /* * Is there a primary selection (highlighted text in an xterm)? */ -- cgit v1.2.3