]> git.tdb.fi Git - builder.git/blobdiff - source/gnucompiler.cpp
Make sure the extra_data of GnuCompiler is initialized
[builder.git] / source / gnucompiler.cpp
index a96f5a34d214faa47caa47936c25d17cd2727af8..4ee09ed5d97593c74c1130d509337ddec39b2ad0 100644 (file)
@@ -104,6 +104,7 @@ string GnuCompiler::create_build_signature(const BuildInfo &binfo) const
 
 void GnuCompiler::do_prepare(ToolData &tool) const
 {
+       tool.extra_data = 0U;
        prepare_syspath(tool);
        prepare_version(tool);
 }
@@ -178,7 +179,11 @@ void GnuCompiler::prepare_version(ToolData &tool) const
        string exe_path = exe->get_path().str();
        unsigned version = query_version(exe_path, "-dumpversion");
        if(version>=0x70000)
-               version = query_version(exe_path, "-dumpfullversion");
+       {
+               unsigned v = query_version(exe_path, "-dumpfullversion");
+               if(v)
+                       version = v;
+       }
        tool.extra_data = version;
        builder.get_logger().log("tools", "%s version is %d.%d.%d", FS::basename(exe->get_path()), version>>16, (version>>8)&0xFF, version&0xFF);
 }