From f50c3e956ffbeb15f3d386752805d1baf1c708df Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Fri, 2 Apr 2010 14:53:13 -0700 Subject: devdraw: only one flushproc, please (OS X) R=rsc http://codereview.appspot.com/799045 --- src/cmd/devdraw/osx-screen-carbon.m | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/cmd/devdraw/osx-screen-carbon.m b/src/cmd/devdraw/osx-screen-carbon.m index d4720be7..6f3b4312 100644 --- a/src/cmd/devdraw/osx-screen-carbon.m +++ b/src/cmd/devdraw/osx-screen-carbon.m @@ -61,6 +61,7 @@ struct { int kalting; // last keystroke was Kalt int touched; // last mouse event was touchCallback int collapsed; // parked in dock + int flushing; // flushproc has started NSMutableArray* devicelist; } osx; @@ -871,7 +872,10 @@ _flushmemscreen(Rectangle r) qlock(&osx.flushlock); if(osx.windowctx == nil){ QDBeginCGContext(GetWindowPort(osx.window), &osx.windowctx); - proccreate(flushproc, nil, 256*1024); + if(!osx.flushing) { + proccreate(flushproc, nil, 256*1024); + osx.flushing = 1; + } } cgr.origin.x = r.min.x; -- cgit v1.2.3