summaryrefslogtreecommitdiffstats
path: root/tools/gfx/open-gl/render-gl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/gfx/open-gl/render-gl.cpp')
-rw-r--r--tools/gfx/open-gl/render-gl.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/tools/gfx/open-gl/render-gl.cpp b/tools/gfx/open-gl/render-gl.cpp
index 5bbee254d..2a0114998 100644
--- a/tools/gfx/open-gl/render-gl.cpp
+++ b/tools/gfx/open-gl/render-gl.cpp
@@ -1519,12 +1519,12 @@ protected:
return static_cast<RootShaderObjectLayoutImpl*>(m_layout.Ptr());
}
- GfxCount SLANG_MCALL getEntryPointCount() SLANG_OVERRIDE
+ SLANG_NO_THROW GfxCount SLANG_MCALL getEntryPointCount() SLANG_OVERRIDE
{
return (GfxCount)m_entryPoints.getCount();
}
- SlangResult SLANG_MCALL getEntryPoint(GfxIndex index, IShaderObject** outEntryPoint)
- SLANG_OVERRIDE
+ SLANG_NO_THROW SlangResult SLANG_MCALL
+ getEntryPoint(GfxIndex index, IShaderObject** outEntryPoint) SLANG_OVERRIDE
{
*outEntryPoint = m_entryPoints[index];
m_entryPoints[index]->addRef();
@@ -2510,6 +2510,12 @@ SLANG_NO_THROW Result SLANG_MCALL GLDevice::createTextureResource(
{
for (int j = 0; j < srcDesc.numMipLevels; j++)
{
+ const void* dataPtr = nullptr;
+ if (initData)
+ {
+ dataPtr = initData[slice].data;
+ ++slice;
+ }
glTexImage3D(
target,
j,
@@ -2520,7 +2526,7 @@ SLANG_NO_THROW Result SLANG_MCALL GLDevice::createTextureResource(
0,
format,
formatType,
- initData ? initData[slice++].data : nullptr);
+ dataPtr);
}
}
}