Commit 0bfad294 authored by Bill Hoffman's avatar Bill Hoffman
Browse files

ENH: make sure files are binary for download and make status a pair of value string

parent 4f44c787
......@@ -1970,7 +1970,7 @@ cmFileCommand::HandleDownloadCommand(std::vector<std::string>
}
i++;
}
std::ofstream fout(file.c_str());
std::ofstream fout(file.c_str(), std::ios::binary);
if(!fout)
{
this->SetError("FILE(DOWNLOAD url file TIMEOUT time) can not open "
......@@ -2008,8 +2008,10 @@ cmFileCommand::HandleDownloadCommand(std::vector<std::string>
curl_easy_cleanup(curl);
if(statusVar.size())
{
this->Makefile->AddDefinition(statusVar.c_str(),
curl_easy_strerror(res));
cmOStringStream result;
result << (int)res << ";\"" << curl_easy_strerror(res) << "\"";
this->Makefile->AddDefinition(statusVar.c_str(),
result.str().c_str());
}
curl_global_cleanup();
if(chunkDebug.size())
......
......@@ -150,7 +150,11 @@ public:
"DOWNLOAD will download the givin URL to the given file. "
"If LOG var is specified a log of the download will be put in var. "
"If STATUS var is specified the status of the operation will"
" be put in var. If TIMEOUT time is specified, the operation will "
" be put in var. The status is returned in a list of length 2. "
"The first element is the numeric return value for the operation, "
"and the second element is a string value for the error. A 0 "
"numeric error means no error in the operation. "
"If TIMEOUT time is specified, the operation will "
"timeout after time seconds, time can be specified as a float.\n";
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment