mirror of
https://github.com/reactos/CMake.git
synced 2025-01-22 03:16:03 +00:00
KWSys 2017-06-01 (8243fefa)
Code extracted from: https://gitlab.kitware.com/utils/kwsys.git at commit 8243fefa3f1ecb623a3bb8db8153941b914c7206 (master). Upstream Shortlog ----------------- Pavel Solodovnikov (2): 36d14691 Access string npos without instance ab265991 Remove second arg: npos in substr usages
This commit is contained in:
parent
50988f6d76
commit
74ef363dd7
@ -109,7 +109,7 @@ bool Directory::Load(const std::string& name)
|
||||
// Make sure the slashes in the wildcard suffix are consistent with the
|
||||
// rest of the path
|
||||
buf = new char[n + 2 + 1];
|
||||
if (name.find('\\') != name.npos) {
|
||||
if (name.find('\\') != std::string::npos) {
|
||||
sprintf(buf, "%s\\*", name.c_str());
|
||||
} else {
|
||||
sprintf(buf, "%s/*", name.c_str());
|
||||
|
@ -147,11 +147,11 @@ std::wstring Encoding::ToWide(const std::string& str)
|
||||
wstr += ToWide(str.c_str() + pos);
|
||||
}
|
||||
nullPos = str.find('\0', pos);
|
||||
if (nullPos != str.npos) {
|
||||
if (nullPos != std::string::npos) {
|
||||
pos = nullPos + 1;
|
||||
wstr += wchar_t('\0');
|
||||
}
|
||||
} while (nullPos != str.npos);
|
||||
} while (nullPos != std::string::npos);
|
||||
#endif
|
||||
return wstr;
|
||||
}
|
||||
@ -181,11 +181,11 @@ std::string Encoding::ToNarrow(const std::wstring& str)
|
||||
nstr += ToNarrow(str.c_str() + pos);
|
||||
}
|
||||
nullPos = str.find(wchar_t('\0'), pos);
|
||||
if (nullPos != str.npos) {
|
||||
if (nullPos != std::string::npos) {
|
||||
pos = nullPos + 1;
|
||||
nstr += '\0';
|
||||
}
|
||||
} while (nullPos != str.npos);
|
||||
} while (nullPos != std::string::npos);
|
||||
#endif
|
||||
return nstr;
|
||||
}
|
||||
|
@ -1332,7 +1332,7 @@ std::string SymbolProperties::GetFileName(const std::string& path) const
|
||||
if (!this->ReportPath) {
|
||||
size_t at = file.rfind("/");
|
||||
if (at != std::string::npos) {
|
||||
file = file.substr(at + 1, std::string::npos);
|
||||
file = file.substr(at + 1);
|
||||
}
|
||||
}
|
||||
return file;
|
||||
@ -3342,11 +3342,11 @@ std::string SystemInformationImplementation::ExtractValueFromCpuInfoFile(
|
||||
std::string buffer, const char* word, size_t init)
|
||||
{
|
||||
size_t pos = buffer.find(word, init);
|
||||
if (pos != buffer.npos) {
|
||||
if (pos != std::string::npos) {
|
||||
this->CurrentPositionInFile = pos;
|
||||
pos = buffer.find(":", pos);
|
||||
size_t pos2 = buffer.find("\n", pos);
|
||||
if (pos != buffer.npos && pos2 != buffer.npos) {
|
||||
if (pos != std::string::npos && pos2 != std::string::npos) {
|
||||
// It may happen that the beginning matches, but this is still not the
|
||||
// requested key.
|
||||
// An example is looking for "cpu" when "cpu family" comes first. So we
|
||||
@ -3361,7 +3361,7 @@ std::string SystemInformationImplementation::ExtractValueFromCpuInfoFile(
|
||||
return buffer.substr(pos + 2, pos2 - pos - 2);
|
||||
}
|
||||
}
|
||||
this->CurrentPositionInFile = buffer.npos;
|
||||
this->CurrentPositionInFile = std::string::npos;
|
||||
return "";
|
||||
}
|
||||
|
||||
@ -3388,7 +3388,7 @@ bool SystemInformationImplementation::RetreiveInformationFromCpuInfoFile()
|
||||
// Number of logical CPUs (combination of multiple processors, multi-core
|
||||
// and SMT)
|
||||
size_t pos = buffer.find("processor\t");
|
||||
while (pos != buffer.npos) {
|
||||
while (pos != std::string::npos) {
|
||||
this->NumberOfLogicalCPU++;
|
||||
pos = buffer.find("processor\t", pos + 1);
|
||||
}
|
||||
@ -3397,7 +3397,7 @@ bool SystemInformationImplementation::RetreiveInformationFromCpuInfoFile()
|
||||
// Count sockets.
|
||||
std::set<int> PhysicalIDs;
|
||||
std::string idc = this->ExtractValueFromCpuInfoFile(buffer, "physical id");
|
||||
while (this->CurrentPositionInFile != buffer.npos) {
|
||||
while (this->CurrentPositionInFile != std::string::npos) {
|
||||
int id = atoi(idc.c_str());
|
||||
PhysicalIDs.insert(id);
|
||||
idc = this->ExtractValueFromCpuInfoFile(buffer, "physical id",
|
||||
@ -3507,7 +3507,7 @@ bool SystemInformationImplementation::RetreiveInformationFromCpuInfoFile()
|
||||
this->ExtractValueFromCpuInfoFile(buffer, cachename[index]);
|
||||
if (!cacheSize.empty()) {
|
||||
pos = cacheSize.find(" KB");
|
||||
if (pos != cacheSize.npos) {
|
||||
if (pos != std::string::npos) {
|
||||
cacheSize = cacheSize.substr(0, pos);
|
||||
}
|
||||
this->Features.L1CacheSize += atoi(cacheSize.c_str());
|
||||
@ -4586,10 +4586,10 @@ std::string SystemInformationImplementation::ExtractValueFromSysCtl(
|
||||
const char* word)
|
||||
{
|
||||
size_t pos = this->SysCtlBuffer.find(word);
|
||||
if (pos != this->SysCtlBuffer.npos) {
|
||||
if (pos != std::string::npos) {
|
||||
pos = this->SysCtlBuffer.find(": ", pos);
|
||||
size_t pos2 = this->SysCtlBuffer.find("\n", pos);
|
||||
if (pos != this->SysCtlBuffer.npos && pos2 != this->SysCtlBuffer.npos) {
|
||||
if (pos != std::string::npos && pos2 != std::string::npos) {
|
||||
return this->SysCtlBuffer.substr(pos + 2, pos2 - pos - 2);
|
||||
}
|
||||
}
|
||||
@ -4661,14 +4661,14 @@ std::string SystemInformationImplementation::ParseValueFromKStat(
|
||||
args.push_back("-p");
|
||||
|
||||
std::string command = arguments;
|
||||
size_t start = command.npos;
|
||||
size_t start = std::string::npos;
|
||||
size_t pos = command.find(' ', 0);
|
||||
while (pos != command.npos) {
|
||||
while (pos != std::string::npos) {
|
||||
bool inQuotes = false;
|
||||
// Check if we are between quotes
|
||||
size_t b0 = command.find('"', 0);
|
||||
size_t b1 = command.find('"', b0 + 1);
|
||||
while (b0 != command.npos && b1 != command.npos && b1 > b0) {
|
||||
while (b0 != std::string::npos && b1 != std::string::npos && b1 > b0) {
|
||||
if (pos > b0 && pos < b1) {
|
||||
inQuotes = true;
|
||||
break;
|
||||
@ -4682,7 +4682,7 @@ std::string SystemInformationImplementation::ParseValueFromKStat(
|
||||
|
||||
// Remove the quotes if any
|
||||
size_t quotes = arg.find('"');
|
||||
while (quotes != arg.npos) {
|
||||
while (quotes != std::string::npos) {
|
||||
arg.erase(quotes, 1);
|
||||
quotes = arg.find('"');
|
||||
}
|
||||
@ -4865,11 +4865,11 @@ bool SystemInformationImplementation::QueryQNXMemory()
|
||||
args.clear();
|
||||
|
||||
size_t pos = buffer.find("System RAM:");
|
||||
if (pos == buffer.npos)
|
||||
if (pos == std::string::npos)
|
||||
return false;
|
||||
pos = buffer.find(":", pos);
|
||||
size_t pos2 = buffer.find("M (", pos);
|
||||
if (pos2 == buffer.npos)
|
||||
if (pos2 == std::string::npos)
|
||||
return false;
|
||||
|
||||
pos++;
|
||||
@ -4923,11 +4923,11 @@ bool SystemInformationImplementation::QueryQNXProcessor()
|
||||
args.clear();
|
||||
|
||||
size_t pos = buffer.find("Processor1:");
|
||||
if (pos == buffer.npos)
|
||||
if (pos == std::string::npos)
|
||||
return false;
|
||||
|
||||
size_t pos2 = buffer.find("MHz", pos);
|
||||
if (pos2 == buffer.npos)
|
||||
if (pos2 == std::string::npos)
|
||||
return false;
|
||||
|
||||
size_t pos3 = pos2;
|
||||
@ -4937,9 +4937,9 @@ bool SystemInformationImplementation::QueryQNXProcessor()
|
||||
this->CPUSpeedInMHz = atoi(buffer.substr(pos3 + 1, pos2 - pos3 - 1).c_str());
|
||||
|
||||
pos2 = buffer.find(" Stepping", pos);
|
||||
if (pos2 != buffer.npos) {
|
||||
if (pos2 != std::string::npos) {
|
||||
pos2 = buffer.find(" ", pos2 + 1);
|
||||
if (pos2 != buffer.npos && pos2 < pos3) {
|
||||
if (pos2 != std::string::npos && pos2 < pos3) {
|
||||
this->ChipID.Revision =
|
||||
atoi(buffer.substr(pos2 + 1, pos3 - pos2).c_str());
|
||||
}
|
||||
@ -4949,7 +4949,7 @@ bool SystemInformationImplementation::QueryQNXProcessor()
|
||||
do {
|
||||
pos = buffer.find("\nProcessor", pos + 1);
|
||||
++this->NumberOfPhysicalCPU;
|
||||
} while (pos != buffer.npos);
|
||||
} while (pos != std::string::npos);
|
||||
this->NumberOfLogicalCPU = 1;
|
||||
|
||||
return true;
|
||||
|
@ -554,7 +554,7 @@ bool SystemTools::HasEnv(const std::string& key)
|
||||
static int kwsysUnPutEnv(const std::string& env)
|
||||
{
|
||||
size_t pos = env.find('=');
|
||||
if (pos != env.npos) {
|
||||
if (pos != std::string::npos) {
|
||||
std::string name = env.substr(0, pos);
|
||||
unsetenv(name.c_str());
|
||||
} else {
|
||||
@ -570,7 +570,7 @@ static int kwsysUnPutEnv(const std::string& env)
|
||||
{
|
||||
int err = 0;
|
||||
size_t pos = env.find('=');
|
||||
size_t const len = pos == env.npos ? env.size() : pos;
|
||||
size_t const len = pos == std::string::npos ? env.size() : pos;
|
||||
size_t const sz = len + 1;
|
||||
char local_buf[256];
|
||||
char* buf = sz > sizeof(local_buf) ? (char*)malloc(sz) : local_buf;
|
||||
@ -604,7 +604,7 @@ static int kwsysUnPutEnv(std::string const& env)
|
||||
{
|
||||
std::wstring wEnv = Encoding::ToWide(env);
|
||||
size_t const pos = wEnv.find('=');
|
||||
size_t const len = pos == wEnv.npos ? wEnv.size() : pos;
|
||||
size_t const len = pos == std::string::npos ? wEnv.size() : pos;
|
||||
wEnv.resize(len + 1, L'=');
|
||||
wchar_t* newEnv = _wcsdup(wEnv.c_str());
|
||||
if (!newEnv) {
|
||||
@ -620,7 +620,7 @@ static int kwsysUnPutEnv(std::string const& env)
|
||||
static int kwsysUnPutEnv(const std::string& env)
|
||||
{
|
||||
size_t pos = env.find('=');
|
||||
size_t const len = pos == env.npos ? env.size() : pos;
|
||||
size_t const len = pos == std::string::npos ? env.size() : pos;
|
||||
int in = 0;
|
||||
int out = 0;
|
||||
while (environ[in]) {
|
||||
@ -645,7 +645,7 @@ static int kwsysUnPutEnv(const std::string& env)
|
||||
bool SystemTools::PutEnv(const std::string& env)
|
||||
{
|
||||
size_t pos = env.find('=');
|
||||
if (pos != env.npos) {
|
||||
if (pos != std::string::npos) {
|
||||
std::string name = env.substr(0, pos);
|
||||
return setenv(name.c_str(), env.c_str() + pos + 1, 1) == 0;
|
||||
} else {
|
||||
@ -1722,7 +1722,7 @@ std::string SystemTools::CropString(const std::string& s, size_t max_len)
|
||||
size_t middle = max_len / 2;
|
||||
|
||||
n += s.substr(0, middle);
|
||||
n += s.substr(s.size() - (max_len - middle), std::string::npos);
|
||||
n += s.substr(s.size() - (max_len - middle));
|
||||
|
||||
if (max_len > 2) {
|
||||
n[middle] = '.';
|
||||
@ -1851,7 +1851,7 @@ static void ConvertVMSToUnix(std::string& path)
|
||||
{
|
||||
std::string::size_type rootEnd = path.find(":[");
|
||||
std::string::size_type pathEnd = path.find("]");
|
||||
if (rootEnd != path.npos) {
|
||||
if (rootEnd != std::string::npos) {
|
||||
std::string root = path.substr(0, rootEnd);
|
||||
std::string pathPart = path.substr(rootEnd + 2, pathEnd - rootEnd - 2);
|
||||
const char* pathCString = pathPart.c_str();
|
||||
@ -4337,7 +4337,7 @@ bool SystemTools::GetPermissions(const std::string& file, mode_t& mode)
|
||||
mode |= S_IFREG;
|
||||
}
|
||||
size_t dotPos = file.rfind('.');
|
||||
const char* ext = dotPos == file.npos ? 0 : (file.c_str() + dotPos);
|
||||
const char* ext = dotPos == std::string::npos ? 0 : (file.c_str() + dotPos);
|
||||
if (ext && (Strucmp(ext, ".exe") == 0 || Strucmp(ext, ".com") == 0 ||
|
||||
Strucmp(ext, ".cmd") == 0 || Strucmp(ext, ".bat") == 0)) {
|
||||
mode |= (_S_IEXEC | (_S_IEXEC >> 3) | (_S_IEXEC >> 6));
|
||||
|
@ -329,9 +329,8 @@ static int testPipe()
|
||||
throw std::runtime_error("ReadFile#3 failed!");
|
||||
}
|
||||
buffer2[bytesRead] = 0;
|
||||
didFail =
|
||||
encodedTestString.compare(0, encodedTestString.npos, buffer2,
|
||||
encodedTestString.size()) == 0
|
||||
didFail = encodedTestString.compare(0, std::string::npos, buffer2,
|
||||
encodedTestString.size()) == 0
|
||||
? 0
|
||||
: 1;
|
||||
}
|
||||
@ -435,9 +434,8 @@ static int testFile()
|
||||
throw std::runtime_error("ReadFile#2 failed!");
|
||||
}
|
||||
buffer2[bytesRead] = 0;
|
||||
didFail =
|
||||
encodedTestString.compare(0, encodedTestString.npos, buffer2,
|
||||
encodedTestString.size()) == 0
|
||||
didFail = encodedTestString.compare(0, std::string::npos, buffer2,
|
||||
encodedTestString.size()) == 0
|
||||
? 0
|
||||
: 1;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user