@@ -455,7 +455,11 @@ int System::getOsMajorVersion()
455455 instance ()->mOSMajorVersion = [[sysVerComponents firstObject] intValue];
456456#elif defined( CINDER_MAC )
457457 if ( [[NSProcessInfo processInfo] respondsToSelector:@selector (operatingSystemVersion)] ) {
458- ShadowOSVersion version = ((ShadowOSVersion (*)(id, SEL))objc_msgSend_stret)([NSProcessInfo processInfo], @selector (operatingSystemVersion));
458+ #if defined(__LP64__) && __LP64__
459+ ShadowOSVersion version = ((ShadowOSVersion (*)(id, SEL))objc_msgSend)([NSProcessInfo processInfo], @selector (operatingSystemVersion));
460+ #else
461+ ShadowOSVersion version = ((ShadowOSVersion (*)(id, SEL))objc_msgSend_stret)([NSProcessInfo processInfo], @selector (operatingSystemVersion));
462+ #endif
459463 instance ()->mOSMajorVersion = (int32_t )version.majorVersion ;
460464 } else {
461465 #pragma clang diagnostic push
@@ -487,7 +491,11 @@ int System::getOsMinorVersion()
487491 instance ()->mOSMinorVersion = [[sysVerComponents objectAtIndex:1 ] intValue];
488492#elif defined( CINDER_MAC )
489493 if ( [[NSProcessInfo processInfo] respondsToSelector:@selector (operatingSystemVersion)] ) {
490- ShadowOSVersion version = ((ShadowOSVersion (*)(id, SEL))objc_msgSend_stret)([NSProcessInfo processInfo], @selector (operatingSystemVersion));
494+ #if defined(__LP64__) && __LP64__
495+ ShadowOSVersion version = ((ShadowOSVersion (*)(id, SEL))objc_msgSend)([NSProcessInfo processInfo], @selector (operatingSystemVersion));
496+ #else
497+ ShadowOSVersion version = ((ShadowOSVersion (*)(id, SEL))objc_msgSend_stret)([NSProcessInfo processInfo], @selector (operatingSystemVersion));
498+ #endif
491499 instance ()->mOSMinorVersion = (int32_t )version.minorVersion ;
492500 } else {
493501 #pragma clang diagnostic push
@@ -522,7 +530,11 @@ int System::getOsBugFixVersion()
522530 instance ()->mOSBugFixVersion = 0 ;
523531#elif defined( CINDER_MAC )
524532 if ( [[NSProcessInfo processInfo] respondsToSelector:@selector (operatingSystemVersion)] ) {
525- ShadowOSVersion version = ((ShadowOSVersion (*)(id, SEL))objc_msgSend_stret)([NSProcessInfo processInfo], @selector (operatingSystemVersion));
533+ #if defined(__LP64__) && __LP64__
534+ ShadowOSVersion version = ((ShadowOSVersion (*)(id, SEL))objc_msgSend)([NSProcessInfo processInfo], @selector (operatingSystemVersion));
535+ #else
536+ ShadowOSVersion version = ((ShadowOSVersion (*)(id, SEL))objc_msgSend_stret)([NSProcessInfo processInfo], @selector (operatingSystemVersion));
537+ #endif
526538 instance ()->mOSBugFixVersion = (int32_t )version.patchVersion ;
527539 } else {
528540 #pragma clang diagnostic push
0 commit comments