From 7b1e14b8e81c2dc44def58f2781bcfcc3cc9e58b Mon Sep 17 00:00:00 2001 From: "J. Alexander Treuman" Date: Sun, 18 Feb 2007 00:42:22 +0000 Subject: Reverting all of my localization changes. It was a horrible implementation, and fixing it is a big enough job that I don't know when I'll get around to it. Probably best just starting from scratch anyhow. git-svn-id: https://svn.musicpd.org/mpd/trunk@5373 09075e82-0dd4-0310-85a5-a0d7c8717e4f --- src/localization.c | 105 ----------------------------------------------------- 1 file changed, 105 deletions(-) delete mode 100644 src/localization.c (limited to 'src/localization.c') diff --git a/src/localization.c b/src/localization.c deleted file mode 100644 index b58c83945..000000000 --- a/src/localization.c +++ /dev/null @@ -1,105 +0,0 @@ -/* the Music Player Daemon (MPD) - * (c)2003-2006 by Warren Dukes (warren.dukes@gmail.com) - * This project's homepage is: http://www.musicpd.org - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#include "localization.h" -#include "charConv.h" -#include "utils.h" -#include "log.h" - -#include -#include - -#ifdef HAVE_LOCALE -#ifdef HAVE_LANGINFO_CODESET -#include -#include -#endif -#endif - -static char *localeCharset; - -char *utf8ToLocaleCharset(char *str) -{ - static char *ret; - - if (localeCharset) - ret = convCharset(localeCharset, "UTF-8", str, ret); - - if (!ret) - ret = xstrdup(str); - - return ret; -} - -void setLocaleCharset(char *charset) -{ - if (localeCharset) - free(localeCharset); - localeCharset = charset; -} - -char *getLocaleCharset(void) -{ - return localeCharset; -} - -void initLocalization(void) -{ -#ifdef HAVE_LOCALE -#ifdef HAVE_LANGINFO_CODESET - char *temp; - char *originalLocale; - char *currentLocale; - - if (!(originalLocale = setlocale(LC_CTYPE, NULL))) { - WARNING("problems getting locale with setlocale()\n"); - } else { - originalLocale = xstrdup(originalLocale); - - if (!(currentLocale = setlocale(LC_CTYPE, ""))) { - WARNING("problems setting current locale with " - "setlocale()\n"); - } else { - if (strcmp(currentLocale, "C") == 0 || - strcmp(currentLocale, "POSIX") == 0) { - WARNING("current locale is \"%s\"\n", - currentLocale); - setLocaleCharset(xstrdup("ISO-8859-1")); - } else if ((temp = nl_langinfo(CODESET))) { - setLocaleCharset(xstrdup(temp)); - } else { - WARNING("problems getting charset for " - "locale\n"); - } - - if (!setlocale(LC_CTYPE, originalLocale)) { - WARNING("problems resetting locale with " - "setlocale()\n"); - } - } - - free(originalLocale); - } -#endif -#endif -} - -void finishLocalization(void) -{ - setLocaleCharset(NULL); -} -- cgit v1.2.3