Browse Source

cmListCommand: check list(FILTER) operation before the list

A future commit will make the not-a-list case a success, but invalid
operations should still be diagnosed in that case.
Ben Boeckel 7 years ago
parent
commit
bf572ac952
1 changed files with 8 additions and 8 deletions
  1. 8 8
      Source/cmListCommand.cxx

+ 8 - 8
Source/cmListCommand.cxx

@@ -1289,14 +1289,6 @@ bool cmListCommand::HandleFilterCommand(std::vector<std::string> const& args)
     return false;
   }
 
-  const std::string& listName = args[1];
-  // expand the variable
-  std::vector<std::string> varArgsExpanded;
-  if (!this->GetList(varArgsExpanded, listName)) {
-    this->SetError("sub-command FILTER requires list to be present.");
-    return false;
-  }
-
   const std::string& op = args[2];
   bool includeMatches;
   if (op == "INCLUDE") {
@@ -1308,6 +1300,14 @@ bool cmListCommand::HandleFilterCommand(std::vector<std::string> const& args)
     return false;
   }
 
+  const std::string& listName = args[1];
+  // expand the variable
+  std::vector<std::string> varArgsExpanded;
+  if (!this->GetList(varArgsExpanded, listName)) {
+    this->SetError("sub-command FILTER requires list to be present.");
+    return false;
+  }
+
   const std::string& mode = args[3];
   if (mode == "REGEX") {
     if (args.size() != 5) {