| Index: third_party/WebKit/Source/modules/webgl/WebGLFramebuffer.cpp | 
| diff --git a/third_party/WebKit/Source/modules/webgl/WebGLFramebuffer.cpp b/third_party/WebKit/Source/modules/webgl/WebGLFramebuffer.cpp | 
| index 4eeaa89566d14da3876eb791002d6ed9f2555805..ccd6d8caaf99ad3548c4e5d3c4e10b6760fbda4e 100644 | 
| --- a/third_party/WebKit/Source/modules/webgl/WebGLFramebuffer.cpp | 
| +++ b/third_party/WebKit/Source/modules/webgl/WebGLFramebuffer.cpp | 
| @@ -46,7 +46,6 @@ | 
|  | 
| GLsizei width() const override; | 
| GLsizei height() const override; | 
| -    GLsizei depth() const override; | 
| GLenum format() const override; | 
| GLenum type() const override; | 
| bool isCubeComplete() const override; | 
| @@ -86,11 +85,6 @@ | 
| return m_renderbuffer->height(); | 
| } | 
|  | 
| -GLsizei WebGLRenderbufferAttachment::depth() const | 
| -{ | 
| -    return 1; | 
| -} | 
| - | 
| GLenum WebGLRenderbufferAttachment::format() const | 
| { | 
| GLenum format = m_renderbuffer->internalFormat(); | 
| @@ -166,7 +160,6 @@ | 
|  | 
| GLsizei width() const override; | 
| GLsizei height() const override; | 
| -    GLsizei depth() const override; | 
| GLenum format() const override; | 
| GLenum type() const override; | 
| bool isCubeComplete() const override; | 
| @@ -210,11 +203,6 @@ | 
| GLsizei WebGLTextureAttachment::height() const | 
| { | 
| return m_texture->getHeight(m_target, m_level); | 
| -} | 
| - | 
| -GLsizei WebGLTextureAttachment::depth() const | 
| -{ | 
| -    return m_texture->getDepth(m_target, m_level); | 
| } | 
|  | 
| GLenum WebGLTextureAttachment::format() const | 
| @@ -551,7 +539,7 @@ | 
| GLenum WebGLFramebuffer::checkStatus(const char** reason) const | 
| { | 
| unsigned count = 0; | 
| -    GLsizei width = 0, height = 0, depth = 0; | 
| +    GLsizei width = 0, height = 0; | 
| WebGLAttachment* depthAttachment = nullptr; | 
| WebGLAttachment* stencilAttachment = nullptr; | 
| WebGLAttachment* depthStencilAttachment = nullptr; | 
| @@ -579,18 +567,15 @@ | 
| depthStencilAttachment = attachment; | 
| break; | 
| } | 
| -        // Note: In GLES 3, images for a framebuffer need not to have the same dimensions to be framebuffer complete. | 
| -        // However, in Direct3D 11, on top of which OpenGL ES 3 behavior is emulated in Windows, all render targets | 
| -        // must have the same size in all dimensions. In order to have consistent WebGL 2 behaviors across platforms, | 
| -        // we generate FRAMEBUFFER_INCOMPLETE_DIMENSIONS in this situation. | 
| -        if (!count) { | 
| -            width = attachment->width(); | 
| -            height = attachment->height(); | 
| -            depth = attachment->depth(); | 
| -        } else { | 
| -            if (width != attachment->width() || height != attachment->height() || depth != attachment->depth()) { | 
| -                *reason = "attachments do not have the same dimensions"; | 
| -                return GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS; | 
| +        if (!isWebGL2OrHigher) { | 
| +            if (!count) { | 
| +                width = attachment->width(); | 
| +                height = attachment->height(); | 
| +            } else { | 
| +                if (width != attachment->width() || height != attachment->height()) { | 
| +                    *reason = "attachments do not have the same dimensions"; | 
| +                    return GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS; | 
| +                } | 
| } | 
| } | 
| ++count; | 
|  |