mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Checking PID language codes for ISO 639 compliance
This commit is contained in:
parent
e656c86153
commit
c834d84db0
4
HISTORY
4
HISTORY
@ -3117,7 +3117,7 @@ Video Disk Recorder Revision History
|
|||||||
learned inside the menu to avoid overwriting the date/time in the 'classic'
|
learned inside the menu to avoid overwriting the date/time in the 'classic'
|
||||||
skin (thanks to Oliver Endriss for reporting this one).
|
skin (thanks to Oliver Endriss for reporting this one).
|
||||||
|
|
||||||
2004-11-07: Version 1.3.16
|
2004-11-14: Version 1.3.16
|
||||||
|
|
||||||
- Fixed cChannel::SetName() in case only the ShortName or Provider has changed
|
- Fixed cChannel::SetName() in case only the ShortName or Provider has changed
|
||||||
(thanks to Sascha Volkenandt for reporting this one).
|
(thanks to Sascha Volkenandt for reporting this one).
|
||||||
@ -3132,3 +3132,5 @@ Video Disk Recorder Revision History
|
|||||||
- Fixed a short glitch when starting a recording on the primary device while
|
- Fixed a short glitch when starting a recording on the primary device while
|
||||||
in replay or transfer mode (thanks to Marco Schlüßler).
|
in replay or transfer mode (thanks to Marco Schlüßler).
|
||||||
- Added missing initialization of cEvent::seen.
|
- Added missing initialization of cEvent::seen.
|
||||||
|
- Checking PID language codes for ISO 639 compliance to avoid problems with
|
||||||
|
funny characters. Invalid language codes will be stored as "???".
|
||||||
|
9
i18n.c
9
i18n.c
@ -4,7 +4,7 @@
|
|||||||
* See the main source file 'vdr.c' for copyright information and
|
* See the main source file 'vdr.c' for copyright information and
|
||||||
* how to reach the author.
|
* how to reach the author.
|
||||||
*
|
*
|
||||||
* $Id: i18n.c 1.162 2004/11/06 10:26:52 kls Exp $
|
* $Id: i18n.c 1.163 2004/11/14 14:28:29 kls Exp $
|
||||||
*
|
*
|
||||||
* Translations provided by:
|
* Translations provided by:
|
||||||
*
|
*
|
||||||
@ -75,6 +75,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "i18n.h"
|
#include "i18n.h"
|
||||||
|
#include <ctype.h>
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#include "tools.h"
|
#include "tools.h"
|
||||||
|
|
||||||
@ -5222,6 +5223,12 @@ int I18nLanguageIndex(const char *Code)
|
|||||||
|
|
||||||
const char *I18nNormalizeLanguageCode(const char *Code)
|
const char *I18nNormalizeLanguageCode(const char *Code)
|
||||||
{
|
{
|
||||||
|
if (Code[0] && !isalnum(Code[0]) || Code[1] && !isalnum(Code[1]) || Code[2] && !isalnum(Code[2])) {
|
||||||
|
// ISO 639 language codes are defined as alphabetical characters, but digits are apparently
|
||||||
|
// also used, for instance for "2ch"
|
||||||
|
//dsyslog("invalid language code: '%s'", Code);
|
||||||
|
return "???";
|
||||||
|
}
|
||||||
int n = I18nLanguageIndex(Code);
|
int n = I18nLanguageIndex(Code);
|
||||||
return n >= 0 ? I18nLanguageCode(n) : Code;
|
return n >= 0 ? I18nLanguageCode(n) : Code;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user