content/canvas/src/WebGLExtensionDebugShaders.cpp

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:fe85ea65666e
1 /* -*- Mode: C++; tab-width: 20; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6 #include "WebGLContext.h"
7 #include "WebGLExtensions.h"
8 #include "mozilla/dom/WebGLRenderingContextBinding.h"
9
10 using namespace mozilla;
11
12 WebGLExtensionDebugShaders::WebGLExtensionDebugShaders(WebGLContext* context)
13 : WebGLExtensionBase(context)
14 {
15 }
16
17 WebGLExtensionDebugShaders::~WebGLExtensionDebugShaders()
18 {
19 }
20
21 /* If no source has been defined, compileShader() has not been called,
22 * or the translation has failed for shader, an empty string is
23 * returned; otherwise, return the translated source.
24 */
25 void
26 WebGLExtensionDebugShaders::GetTranslatedShaderSource(WebGLShader* shader,
27 nsAString& retval)
28 {
29 if (mIsLost) {
30 return mContext->ErrorInvalidOperation("getTranslatedShaderSource: "
31 "Extension is lost.");
32 }
33
34 mContext->GetShaderTranslatedSource(shader, retval);
35
36 if (retval.IsVoid()) {
37 CopyASCIItoUTF16("", retval);
38 }
39 }
40
41 IMPL_WEBGL_EXTENSION_GOOP(WebGLExtensionDebugShaders)

mercurial