diff --git a/stepmania/src/arch/ArchHooks/ArchHooks_darwin.cpp b/stepmania/src/arch/ArchHooks/ArchHooks_darwin.cpp index 3748c4603a..72fad07ecf 100644 --- a/stepmania/src/arch/ArchHooks/ArchHooks_darwin.cpp +++ b/stepmania/src/arch/ArchHooks/ArchHooks_darwin.cpp @@ -172,7 +172,8 @@ RString ArchHooks_darwin::GetMachineId() const if( serial ) { - ret = CFStringGetCStringPtr( (CFStringRef)serial, kCFStringEncodingMacRoman ); + const char *str = CFStringGetCStringPtr( (CFStringRef)serial, CFStringGetSystemEncoding() ); + ret = str? str:""; CFRelease( serial ); } IOObjectRelease( service ); @@ -339,7 +340,9 @@ RString ArchHooks::GetPreferredLanguage() (lang = (CFStringRef)CFArrayGetValueAtIndex(languages, 0)) != NULL ) { // MacRoman agrees with ASCII in the low-order 7 bits. - ret = RString( CFStringGetCStringPtr(lang, kCFStringEncodingMacRoman), 2 ); + const char *str = CFStringGetCStringPtr( lang, kCFStringEncodingMacRoman ); + ASSERT( str ); + ret = RString( str, 2 ); } CFRelease( languages ); diff --git a/stepmania/src/archutils/Darwin/HIDDevice.cpp b/stepmania/src/archutils/Darwin/HIDDevice.cpp index 285f8ffad7..1517a10231 100644 --- a/stepmania/src/archutils/Darwin/HIDDevice.cpp +++ b/stepmania/src/archutils/Darwin/HIDDevice.cpp @@ -62,7 +62,10 @@ bool HIDDevice::Open( io_object_t device ) } if( object && CFGetTypeID(object) == CFStringGetTypeID() ) - m_sDescription = CFStringGetCStringPtr( CFStringRef(object), CFStringGetSystemEncoding() ); + { + const char *str = CFStringGetCStringPtr( CFStringRef(object), CFStringGetSystemEncoding() ); + m_sDescription = str? str:""; + } if( m_sDescription == "" ) m_sDescription = ssprintf( "%04x:%04x", vid, pid );