This is most likely not related to VLD.
My educated guess is that the code in readShader reads more byte than m_shaderCodeLenght+1.
Anyway, I would suggest to not rely on char arrays when reading files and instead read into std::string and then get the char array from std::string::c_str as suggested in http://stackoverflow.com/a/2602060/600633
My educated guess is that the code in readShader reads more byte than m_shaderCodeLenght+1.
Anyway, I would suggest to not rely on char arrays when reading files and instead read into std::string and then get the char array from std::string::c_str as suggested in http://stackoverflow.com/a/2602060/600633