darwinvlc: Use FromCFString

(cherry picked from commit d75d12bee2)
Signed-off-by: Marvin Scholz <epirat07@gmail.com>
This commit is contained in:
Marvin Scholz 2018-10-08 10:53:50 +02:00 committed by Jean-Baptiste Kempf
parent cdd6c77072
commit fef232f9f5
1 changed files with 9 additions and 14 deletions

View File

@ -27,6 +27,9 @@
#endif
#include <vlc/vlc.h>
#include <vlc_common.h>
#include <vlc_charset.h>
#include <stdlib.h>
#include <locale.h>
#include <signal.h>
@ -251,21 +254,13 @@ int main(int i_argc, const char *ppsz_argv[])
language = (CFStringRef)CFPreferencesCopyAppValue(CFSTR("language"),
kCFPreferencesCurrentApplication);
if (language) {
CFIndex length = CFStringGetLength(language) + 1;
if (length > 0) {
CFIndex maxSize = CFStringGetMaximumSizeForEncoding(length, kCFStringEncodingUTF8);
lang = (char *)malloc(maxSize);
if(lang) {
CFStringGetCString(language, lang, maxSize - 1, kCFStringEncodingUTF8);
if (strncmp( lang, "auto", 4 )) {
char tmp[11];
snprintf(tmp, 11, "LANG=%s", lang);
putenv(tmp);
}
}
free(lang);
lang = FromCFString(language, kCFStringEncodingUTF8);
if (strncmp( lang, "auto", 4 )) {
char tmp[11];
snprintf(tmp, 11, "LANG=%s", lang);
putenv(tmp);
}
free(lang);
CFRelease(language);
}
}