Bug 814839 - Disable WebGL depth textures on Mac NVIDIA - r=jgilbert,bjacob, a=abillings
authorMilan Sreckovic <milan@mozilla.com>
Tue, 18 Dec 2012 16:23:40 -0500
changeset 125543 d5f731147e6c7063bd2f1551293d32ee3defa85e
parent 125542 7c4c1bbf4d889f58bdb14ffd14c62bfef8c783c1
child 125544 cf51fc0485f053f601571292c3369b52c97319ce
push id2151
push userlsblakk@mozilla.com
push dateTue, 19 Feb 2013 18:06:57 +0000
treeherdermozilla-beta@4952e88741ec [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjgilbert, bjacob, abillings
bugs814839
milestone20.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 814839 - Disable WebGL depth textures on Mac NVIDIA - r=jgilbert,bjacob, a=abillings
gfx/gl/GLContext.cpp
--- a/gfx/gl/GLContext.cpp
+++ b/gfx/gl/GLContext.cpp
@@ -589,16 +589,26 @@ GLContext::InitExtensions()
     static bool firstRun = true;
 #else
     // Non-DEBUG, so never spew.
     const bool firstRun = false;
 #endif
 
     mAvailableExtensions.Load(extensions, sExtensionNames, firstRun && DebugMode());
 
+#ifdef XP_MACOSX
+    // The Mac Nvidia driver, for versions up to and including 10.8, don't seem
+    // to properly support this.  See 814839
+    if (WorkAroundDriverBugs() &&
+        Vendor() == gl::GLContext::VendorNVIDIA)
+    {
+        MarkExtensionUnsupported(gl::GLContext::EXT_packed_depth_stencil);
+    }
+#endif
+
 #ifdef DEBUG
     firstRun = false;
 #endif
 }
 
 
 // Take texture data in a given buffer and copy it into a larger buffer,
 // padding out the edge pixels for filtering if necessary