iOS: fix #16485 crash on startup (#16498)

pull/16499/head
Eric Warmenhoven 2024-05-05 05:29:27 -04:00 committed by GitHub
parent 711bf39155
commit 24c378da4e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 9 additions and 2 deletions

View File

@ -68,13 +68,16 @@ static struct string_list *ui_companion_cocoatouch_get_app_icons(void)
attr.i = 0;
NSDictionary *iconfiles = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleIcons"];
NSString *primary;
const char *cstr;
#if TARGET_OS_TV
primary = iconfiles[@"CFBundlePrimaryIcon"];
#else
primary = iconfiles[@"CFBundlePrimaryIcon"][@"CFBundleIconName"];
#endif
list = string_list_new();
string_list_append(list, [primary cStringUsingEncoding:kCFStringEncodingUTF8], attr);
cstr = [primary cStringUsingEncoding:kCFStringEncodingUTF8];
if (cstr)
string_list_append(list, cstr, attr);
NSArray<NSString *> *alts;
#if TARGET_OS_TV
@ -84,7 +87,11 @@ static struct string_list *ui_companion_cocoatouch_get_app_icons(void)
#endif
NSArray<NSString *> *sorted = [alts sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];
for (NSString *str in sorted)
string_list_append(list, [str cStringUsingEncoding:kCFStringEncodingUTF8], attr);
{
cstr = [str cStringUsingEncoding:kCFStringEncodingUTF8];
if (cstr)
string_list_append(list, cstr, attr);
}
});
return list;