summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Source/cmAddExecutableCommand.cxx6
-rw-r--r--Source/cmAddLibraryCommand.cxx9
2 files changed, 14 insertions, 1 deletions
diff --git a/Source/cmAddExecutableCommand.cxx b/Source/cmAddExecutableCommand.cxx
index 0bc2a7a..f70e790 100644
--- a/Source/cmAddExecutableCommand.cxx
+++ b/Source/cmAddExecutableCommand.cxx
@@ -49,6 +49,12 @@ bool cmAddExecutableCommand::InitialPass(std::vector<std::string> const& args)
}
}
+ if (s == args.end())
+ {
+ this->SetError("called with incorrect number of arguments, no sources provided");
+ return false;
+ }
+
std::vector<std::string> srclists(s, args.end());
cmTarget* tgt = m_Makefile->AddExecutable(exename.c_str(), srclists);
if ( use_win32 )
diff --git a/Source/cmAddLibraryCommand.cxx b/Source/cmAddLibraryCommand.cxx
index cb7c2d7..9af872c 100644
--- a/Source/cmAddLibraryCommand.cxx
+++ b/Source/cmAddLibraryCommand.cxx
@@ -26,7 +26,8 @@ bool cmAddLibraryCommand::InitialPass(std::vector<std::string> const& args)
}
// Library type defaults to value of BUILD_SHARED_LIBS, if it exists,
// otherwise it defaults to static library.
- int shared = !cmSystemTools::IsOff(m_Makefile->GetDefinition("BUILD_SHARED_LIBS"));
+ int shared =
+ !cmSystemTools::IsOff(m_Makefile->GetDefinition("BUILD_SHARED_LIBS"));
std::vector<std::string>::const_iterator s = args.begin();
@@ -57,6 +58,12 @@ bool cmAddLibraryCommand::InitialPass(std::vector<std::string> const& args)
}
}
+ if (s == args.end())
+ {
+ this->SetError("called with incorrect number of arguments, no sources provided");
+ return false;
+ }
+
std::vector<std::string> srclists;
while (s != args.end())
{