Commit Diff


commit - cac1425c4a48d9bdead08249ccfc0ba5d0156b97
commit + 5154e54d8b8ee864f31f0774ee590be87a1d6e02
blob - 6c41daffd1cf889f03ce7842461391e1ba9b4ea5
blob + 25ae323efd4bfecdc5f9192503b1487d9fa8d6fc
--- src/cmd/devdraw/x11-draw.c
+++ src/cmd/devdraw/x11-draw.c
@@ -74,7 +74,9 @@ xdraw(Memdrawparam *par)
 	 * If no source alpha and an opaque mask, we can just copy
 	 * the source onto the destination.  If the channels are the
 	 * same and the source is not replicated, XCopyArea works.
-	 */
+	 * This is disabled because Ubuntu Precise seems to ship with
+	 * a buggy X server that sometimes drops the XCopyArea
+	 * requests on the floor.
 	m = Simplemask|Fullmask;
 	if((state&(m|Replsrc))==m && src->chan==dst->chan && src->X){
 		xdst = dst->X;
@@ -85,9 +87,10 @@ xdraw(Memdrawparam *par)
 
 		XCopyArea(_x.display, xsrc->pixmap, xdst->pixmap, gc,
 			sp.x, sp.y, Dx(r), Dy(r), dp.x, dp.y);
-	/*	xdirtyxdata(dst, r); */
+	/*	xdirtyxdata(dst, r); * /
 		return 1;
 	}
+	 */
 
 	/*
 	 * If no source alpha, a 1-bit mask, and a simple source,