diff --git a/content/canvas/src/WebGLContextGL.cpp b/content/canvas/src/WebGLContextGL.cpp index c78e766a5c6..e74491fc122 100644 --- a/content/canvas/src/WebGLContextGL.cpp +++ b/content/canvas/src/WebGLContextGL.cpp @@ -2085,7 +2085,18 @@ WebGLContext::GetProgramParameter(nsIWebGLProgram *pobj, PRUint32 pname, nsIVari case LOCAL_GL_VALIDATE_STATUS: { GLint i = 0; +#ifdef XP_MACOSX + if (pname == LOCAL_GL_VALIDATE_STATUS && + gl->Vendor() == gl::GLContext::VendorNVIDIA) + { + // See comment in ValidateProgram below. + i = 1; + } else { + gl->fGetProgramiv(progname, pname, &i); + } +#else gl->fGetProgramiv(progname, pname, &i); +#endif wrval->SetAsBool(PRBool(i)); } break;