CVS Update: cr (branch: trunk)

Robert Ellison <[email protected]>
Newsgroups gmane.comp.graphics.chromium.cvs
Message-ID <[email protected]>
CVSROOT:	/cvsroot/chromium
Module name:	cr
Repository:	cr/spu/replicate/
Changes by:	[email protected].(none)	06/01/24 17:05:13

Log message:
  Fixed a race condition between the X server and a 3D application during replicate.
  
  To replicate properly, the replicate SPU must receive an XVncConnected event,
  followed by an XVncChromiumConnected event.  Both are checked for in a loop
  in replicatespuCheckForVncEvents() that exits when no more X events are pending.
  
  If the XVncChromiumConnected event isn't quite pending yet (perhaps because the
  X server hasn't had a chance to run), the application loop can be exited before
  the XVncChromiumConnected event arrives, which means that the
  application will *not* replicate until the *next* time it has a chance to
  check for VNC events.  In the case of a static application (i.e. one that
  is not rendering continuously, but rather just waits for an Expose), that can
  be never.  (In the case of a dynamic application, VNC events are also checked
  for at glClear() and at buffer flushes, so the problem isn't noticeable.)
  
  The fix is to wait in the replicatespuCheckForVncEvents() loop for
  the XVncChromiumConnected event to appear, once we see an XVncConnected
  event.  The loop is designed to wait for at most 1000 milliseconds, just
  in case something unexpected happens and the second event never comes; in
  this case, when it leaves the loop, it prints a warning.

Modified files:
      cr/spu/replicate/:
        replicatespu_redirect.c 
  
  Revision      Changes    Path
  1.32          +60 -1     cr/spu/replicate/replicatespu_redirect.c



-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.