浏览代码

server-mode: Do not crash when running into INTERFACE_LIBRARY

Closes: #16539
Tobias Hunger 8 年之前
父节点
当前提交
c0bd1eb6d0
共有 1 个文件被更改,包括 6 次插入2 次删除
  1. 6 2
      Source/cmServerProtocol.cxx

+ 6 - 2
Source/cmServerProtocol.cxx

@@ -731,12 +731,16 @@ static Json::Value DumpTarget(cmGeneratorTarget* target,
 
   Json::Value result = Json::objectValue;
   result[kNAME_KEY] = target->GetName();
-
   result[kTYPE_KEY] = typeName;
-  result[kFULL_NAME_KEY] = target->GetFullName(config);
   result[kSOURCE_DIRECTORY_KEY] = lg->GetCurrentSourceDirectory();
   result[kBUILD_DIRECTORY_KEY] = lg->GetCurrentBinaryDirectory();
 
+  if (type == cmStateEnums::INTERFACE_LIBRARY) {
+    return result;
+  }
+
+  result[kFULL_NAME_KEY] = target->GetFullName(config);
+
   if (target->HaveWellDefinedOutputFiles()) {
     Json::Value artifacts = Json::arrayValue;
     artifacts.append(target->GetFullPath(config, false));