From: Marshall Clow Date: Thu, 7 Feb 2013 18:48:09 +0000 (+0000) Subject: Belt and suspenders when calling sysconf X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0749262a1148a73d110885602b4d9e9017a3f04d;p=platform%2Fupstream%2Fllvm.git Belt and suspenders when calling sysconf llvm-svn: 174642 --- diff --git a/libcxx/src/thread.cpp b/libcxx/src/thread.cpp index 184d81e..447eca7 100644 --- a/libcxx/src/thread.cpp +++ b/libcxx/src/thread.cpp @@ -69,7 +69,9 @@ thread::hardware_concurrency() _NOEXCEPT long result = sysconf(_SC_NPROCESSORS_ONLN); // sysconf returns -1 if the name is invalid, the option does not exist or // does not have a definite limit. - if (result == -1) + // if sysconf returns some other negative number, we have no idea + // what is going on. Default to something safe. + if (result < 0) return 0; return static_cast(result); #else // defined(CTL_HW) && defined(HW_NCPU)