CVDisplayLinkSetCurrentCGDisplayFromOpenGLContext fails with mirrored displays

Originator:jbauman
Number:rdar://12398471 Date Originated:28-Sep-2012 02:36 PM
Status:Open Resolved:
Product:Mac OS X Product Version:
Classification: Reproducible:Yes
 
28-Sep-2012 02:36 PM John Bauman:
Summary:
CVDisplayLinkSetCurrentCGDisplayFromOpenGLContext fails with error code kCVReturnInvalidDisplay on systems where the displays are mirrored. This happens on OS X 10.7.5, and possibly earlier. See http://code.google.com/p/chromium/issues/detail?id=152525 for the bug report against Google Chrome.

Steps to Reproduce:
1. Mirror the displays on a 10.7.5 system
2. Launch chrome 22.x, and visit http://webglsamples.googlecode.com/hg/aquarium/aquarium.html

Expected Results:
Everything should display

Actual Results:
It displays black, and Chrome prints "[27327:-1609980608:0927/130405:ERROR:compositing_iosurface_mac.mm(222)] CVDisplayLinkSetCurrentCGDisplayFromOpenGLContext failed: -6670" to the console.

Regression:
Unknown.

Notes:
Our code to set up the CVDisplayLink is based on http://developer.apple.com/library/mac/#documentation/graphicsimaging/conceptual/opengl-macprogguide/opengl_designstrategies/opengl_designstrategies.html . Ignoring the failure of CVDisplayLinkSetCurrentCGDisplayFromOpenGLContext seems to work, so we'd like to know if the behavior of that function is a bug, or if we should be using some other function instead in that case.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!