From: Jay Freeman (saurik) Date: Tue, 16 Nov 2010 00:00:23 +0000 (-0800) Subject: Make CFCString() accept non-UTF8 data without horrible error. X-Git-Tag: v1.0.3366~32 X-Git-Url: https://git.saurik.com/cydia.git/commitdiff_plain/90c63676529c30063994aa4e2650754f8ca4856c?ds=inline Make CFCString() accept non-UTF8 data without horrible error. --- diff --git a/MobileCydia.mm b/MobileCydia.mm index 8b0ae707..03d76f55 100644 --- a/MobileCydia.mm +++ b/MobileCydia.mm @@ -1070,7 +1070,11 @@ NSString *SizeString(double size) { } static _finline CFStringRef CFCString(const char *value) { - return CFStringCreateWithBytesNoCopy(kCFAllocatorDefault, reinterpret_cast(value), strlen(value), kCFStringEncodingUTF8, NO, kCFAllocatorNull); + size_t size(strlen(data)); + + return + CFStringCreateWithBytesNoCopy(kCFAllocatorDefault, reinterpret_cast(data), size, kCFStringEncodingUTF8, NO, kCFAllocatorNull) ?: + CFStringCreateWithBytesNoCopy(kCFAllocatorDefault, reinterpret_cast(data), size, kCFStringEncodingISOLatin1, NO, kCFAllocatorNull); } const char *StripVersion_(const char *version) {