Browse Source

ENH: allow unset vars to be used in list length

Bill Hoffman 20 years ago
parent
commit
a0471c3fe2
1 changed files with 4 additions and 5 deletions
  1. 4 5
      Source/cmListCommand.cxx

+ 4 - 5
Source/cmListCommand.cxx

@@ -106,11 +106,10 @@ bool cmListCommand::HandleLengthCommand(std::vector<std::string> const& args)
   const std::string& listName = args[1];
   const std::string& listName = args[1];
   const std::string& variableName = args[args.size() - 1];
   const std::string& variableName = args[args.size() - 1];
   std::vector<std::string> varArgsExpanded;
   std::vector<std::string> varArgsExpanded;
-  if ( !this->GetList(varArgsExpanded, listName.c_str()) )
-    {
-    return false;
-    }
-
+  // do not check the return value here
+  // if the list var is not found varArgsExpanded will have size 0
+  // and we will return 0
+  this->GetList(varArgsExpanded, listName.c_str());
   size_t length = varArgsExpanded.size();
   size_t length = varArgsExpanded.size();
   char buffer[1024];
   char buffer[1024];
   sprintf(buffer, "%d", static_cast<int>(length));
   sprintf(buffer, "%d", static_cast<int>(length));