Explorar o código

dump-generated-shaders should truncate file when writing

rdb %!s(int64=11) %!d(string=hai) anos
pai
achega
ce88a95ddc
Modificáronse 1 ficheiros con 4 adicións e 1 borrados
  1. 4 1
      panda/src/gobj/shader.cxx

+ 4 - 1
panda/src/gobj/shader.cxx

@@ -2289,17 +2289,20 @@ make(const string &body, const ShaderLanguage &lang) {
   if (i != _make_table.end() && (lang == SL_none || lang == i->second->_language)) {
   if (i != _make_table.end() && (lang == SL_none || lang == i->second->_language)) {
     return i->second;
     return i->second;
   }
   }
+
   PT(ShaderFile) sfile = new ShaderFile("created-shader");
   PT(ShaderFile) sfile = new ShaderFile("created-shader");
   PT(Shader) result = new Shader(sfile, sbody, lang);
   PT(Shader) result = new Shader(sfile, sbody, lang);
   _make_table[sbody] = result;
   _make_table[sbody] = result;
+
   if (dump_generated_shaders) {
   if (dump_generated_shaders) {
     ostringstream fns;
     ostringstream fns;
     int index = _shaders_generated ++;
     int index = _shaders_generated ++;
     fns << "genshader" << index;
     fns << "genshader" << index;
     string fn = fns.str();
     string fn = fns.str();
     gobj_cat.warning() << "Dumping shader: " << fn << "\n";
     gobj_cat.warning() << "Dumping shader: " << fn << "\n";
+
     pofstream s;
     pofstream s;
-    s.open(fn.c_str());
+    s.open(fn.c_str(), ios::out | ios::trunc);
     s << body;
     s << body;
     s.close();
     s.close();
   }
   }