Browse Source

Fixing segfault for solc if stdin is given as input file

- Solc should now check its input files and skip them if they don't
  exist or if they are not a valid file
cl-refactor
Lefteris Karapetsas 10 years ago
parent
commit
965d0c64da
  1. 15
      solc/CommandLineInterface.cpp

15
solc/CommandLineInterface.cpp

@ -255,7 +255,22 @@ bool CommandLineInterface::processInput()
} }
else else
for (string const& infile: m_args["input-file"].as<vector<string>>()) for (string const& infile: m_args["input-file"].as<vector<string>>())
{
auto path = boost::filesystem::path(infile);
if (!boost::filesystem::exists(path))
{
cout << "Skipping non existant input file \"" << infile << "\"" << endl;
continue;
}
if (!boost::filesystem::is_regular_file(path))
{
cout << "\"" << infile << "\" is not a valid file. Skipping" << endl;
continue;
}
m_sourceCodes[infile] = asString(dev::contents(infile)); m_sourceCodes[infile] = asString(dev::contents(infile));
}
try try
{ {

Loading…
Cancel
Save