projects
/
demo
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixes
[demo]
/
src
/
shader_manager.cc
diff --git
a/src/shader_manager.cc
b/src/shader_manager.cc
index
7ebbce6
..
b49f686
100644
(file)
--- a/
src/shader_manager.cc
+++ b/
src/shader_manager.cc
@@
-13,7
+13,7
@@
void ShaderManager::add_shader(Shader *sdr, const char *name)
shaders[name] = sdr;
}
shaders[name] = sdr;
}
-Shader *ShaderManager::load_shader(const char *name, SType type)
+Shader *ShaderManager::load_shader(const char *name, ShaderType type)
{
std::map<std::string, Shader *>::const_iterator it;
it = shaders.find(name);
{
std::map<std::string, Shader *>::const_iterator it;
it = shaders.find(name);
@@
-27,7
+27,6
@@
Shader *ShaderManager::load_shader(const char *name, SType type)
std::string fname = path.empty() ? std::string(name) : path + "/" + std::string(name);
if(!sdr->load(fname.c_str(), type)) {
std::string fname = path.empty() ? std::string(name) : path + "/" + std::string(name);
if(!sdr->load(fname.c_str(), type)) {
- fprintf(stderr, "Failed to load shader: %s.\n", fname.c_str());
delete sdr;
return 0;
}
delete sdr;
return 0;
}
@@
-48,6
+47,9
@@
ShaderProgram *ShaderManager::create_shader_program(const char *vname, const cha
{
path = std::string(gfx_get_shader_path());
{
path = std::string(gfx_get_shader_path());
+ if(!vname || !fname)
+ return 0;
+
Shader *vsdr = load_shader(vname, SDR_VERTEX);
if(!vsdr)
return 0;
Shader *vsdr = load_shader(vname, SDR_VERTEX);
if(!vsdr)
return 0;
@@
-79,4
+81,4
@@
void ShaderManager::set_path(const char *path)
this->path.clear();
else
this->path = std::string(path);
this->path.clear();
else
this->path = std::string(path);
-}
\ No newline at end of file
+}