summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/client.cpp1
-rw-r--r--src/shader.cpp6
2 files changed, 5 insertions, 2 deletions
diff --git a/src/client.cpp b/src/client.cpp
index 5e682aaa3..ccd2034fc 100644
--- a/src/client.cpp
+++ b/src/client.cpp
@@ -2850,6 +2850,7 @@ void Client::afterContentReceived(IrrlichtDevice *device, gui::IGUIFont* font)
m_tsrc->rebuildImagesAndTextures();
// Rebuild shaders
+ infostream<<"- Rebuilding shaders"<<std::endl;
m_shsrc->rebuildShaders();
// Update node aliases
diff --git a/src/shader.cpp b/src/shader.cpp
index 9cef7f353..58042e651 100644
--- a/src/shader.cpp
+++ b/src/shader.cpp
@@ -585,8 +585,10 @@ void ShaderSource::rebuildShaders()
// Recreate shaders
for(u32 i=0; i<m_shaderinfo_cache.size(); i++){
ShaderInfo *info = &m_shaderinfo_cache[i];
- *info = generate_shader(info->name, m_device,
- m_shader_callback, &m_sourcecache);
+ if(info->name != ""){
+ *info = generate_shader(info->name, m_device,
+ m_shader_callback, &m_sourcecache);
+ }
}
}