#include "SDL_internal.h"
#include "../SDL_syslocale.h"
#import <Foundation/Foundation.h>
bool SDL_SYS_GetPreferredLocales(char *buf, size_t buflen)
{
@autoreleasepool {
NSArray *languages = NSLocale.preferredLanguages;
size_t numlangs = 0;
size_t i;
numlangs = (size_t)[languages count];
for (i = 0; i < numlangs; i++) {
NSString *nsstr = [languages objectAtIndex:i];
size_t len;
char *ptr;
if (nsstr == nil) {
break;
}
[nsstr getCString:buf maxLength:buflen encoding:NSASCIIStringEncoding];
len = SDL_strlen(buf);
ptr = SDL_strrchr(buf, '-');
if (ptr != NULL) {
*ptr = '_';
}
if (buflen <= len) {
*buf = '\0'; break;
}
buf += len;
buflen -= len;
if (i < (numlangs - 1)) {
if (buflen <= 1) {
break; }
buf[0] = ','; buf[1] = '\0';
buf++;
buflen--;
}
}
}
return true;
}