Fix QSysInfo::macVersion for OS X minor versions greater than 9.
gestaltSystemVersion's encoding only has room for a single version digit. Thus, OS X 10.10 would previously have been detected as OS X 10.9 (Apple's comments in the header even warn against this). Change-Id: I41c35b1507d39e2958a9aaffaa8c48ac380f61d9 Reviewed-by: Samuel Gaist <samuel.gaist@edeltech.ch> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
parent
2d75c21923
commit
42f9a61608
@ -1770,8 +1770,9 @@ QSysInfo::MacVersion QSysInfo::macVersion()
|
||||
{
|
||||
#if defined(Q_OS_OSX)
|
||||
SInt32 gestalt_version;
|
||||
if (Gestalt(gestaltSystemVersion, &gestalt_version) == noErr) {
|
||||
return QSysInfo::MacVersion(((gestalt_version & 0x00F0) >> 4) + 2);
|
||||
if (Gestalt(gestaltSystemVersionMinor, &gestalt_version) == noErr) {
|
||||
// add 2 because OS X 10.0 is 0x02 in the enum
|
||||
return QSysInfo::MacVersion(gestalt_version + 2);
|
||||
}
|
||||
#elif defined(Q_OS_IOS)
|
||||
return qt_ios_version(); // qtcore_mac_objc.mm
|
||||
|
Loading…
Reference in New Issue
Block a user