]> git.sesse.net Git - vlc/blobdiff - src/text/iso_lang.c
modules: fix module_exists() documentation.
[vlc] / src / text / iso_lang.c
index a6bacb6aec4d7370e72c2765d8b9e339cfc12446..8c6d2eccb8470de496f230adf773cd62ac995e6d 100644 (file)
@@ -1,37 +1,38 @@
 /*****************************************************************************
  * iso_lang.c: function to decode language code (in dvd or a52 for instance).
  *****************************************************************************
- * Copyright (C) 1998-2004 the VideoLAN team
+ * Copyright (C) 1998-2004 VLC authors and VideoLAN
  * $Id$
  *
  * Author: Stéphane Borel <stef@via.ecp.fr>
  *         Arnaud de Bossoreille de Ribou <bozo@via.ecp.fr>
  *
- * 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
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2.1 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.
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser 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., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/
 
 /*****************************************************************************
  * Preamble
  *****************************************************************************/
-#include <stdio.h>
 
 #ifdef HAVE_CONFIG_H
 # include "config.h"
 #endif
 
-#include <vlc/vlc.h>
+#include <stdio.h>
+
+#include <vlc_common.h>
 
 #include "vlc_iso_lang.h"
 
 #include "iso-639_def.h"
 
 static const iso639_lang_t unknown_language =
-    { "Unknown", "Unknown", "??", "???", "???" };
-
-/*****************************************************************************
- * DecodeLanguage: gives the long language name from the two-letter
- *                 ISO-639 code
- *****************************************************************************/
-const char * DecodeLanguage( uint16_t i_code )
-{
-    const iso639_lang_t * p_lang;
-    uint8_t psz_code[3];
-
-    psz_code[0] = i_code >> 8;
-    psz_code[1] = i_code & 0xff;
-    psz_code[2] = '\0';
-
-    for( p_lang = p_languages; p_lang->psz_eng_name; p_lang++ )
-    {
-        if( !memcmp( p_lang->psz_iso639_1, psz_code, 2 ) )
-        {
-# if 0
-            if( *p_lang->psz_native_name )
-            {
-                return p_lang->psz_native_name;
-            }
-#endif
-
-            return _( p_lang->psz_eng_name );
-        }
-    }
-
-    return _( "Unknown" );
-}
+    { "Unknown", "??", "???", "???" };
 
 const iso639_lang_t * GetLang_1( const char * psz_code )
 {
     const iso639_lang_t *p_lang;
 
     for( p_lang = p_languages; p_lang->psz_eng_name; p_lang++ )
-        if( !strncmp( p_lang->psz_iso639_1, psz_code, 2 ) )
+        if( !strncasecmp( p_lang->psz_iso639_1, psz_code, 2 ) )
             return p_lang;
 
     return &unknown_language;
@@ -90,7 +60,7 @@ const iso639_lang_t * GetLang_2T( const char * psz_code )
     const iso639_lang_t *p_lang;
 
     for( p_lang = p_languages; p_lang->psz_eng_name; p_lang++ )
-        if( !strncmp( p_lang->psz_iso639_2T, psz_code, 3 ) )
+        if( !strncasecmp( p_lang->psz_iso639_2T, psz_code, 3 ) )
             return p_lang;
 
     return &unknown_language;
@@ -101,7 +71,7 @@ const iso639_lang_t * GetLang_2B( const char * psz_code )
     const iso639_lang_t *p_lang;
 
     for( p_lang = p_languages; p_lang->psz_eng_name; p_lang++ )
-        if( !strncmp( p_lang->psz_iso639_2B, psz_code, 3 ) )
+        if( !strncasecmp( p_lang->psz_iso639_2B, psz_code, 3 ) )
             return p_lang;
 
     return &unknown_language;