summaryrefslogtreecommitdiff
path: root/i18n.c
diff options
context:
space:
mode:
authorStone <syphyr@gmail.com>2009-01-03 21:50:31 +0200
committerVille Skyttä <ville.skytta@iki.fi>2009-01-03 21:50:31 +0200
commita056f044df6abf32ce5fb663cf5ad302acbe46b8 (patch)
tree4dc89230131e9aaf09c4e71aa7934ebf7fd99539 /i18n.c
parent0bb8af583951e51284eb7363e2748f7322c70020 (diff)
downloadvdr-plugin-text2skin-a056f044df6abf32ce5fb663cf5ad302acbe46b8.tar.gz
vdr-plugin-text2skin-a056f044df6abf32ce5fb663cf5ad302acbe46b8.tar.bz2
Make compatible with VDR >= 1.5.7.
Diffstat (limited to 'i18n.c')
-rw-r--r--i18n.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/i18n.c b/i18n.c
index c8a0fdc..4079f2a 100644
--- a/i18n.c
+++ b/i18n.c
@@ -166,7 +166,11 @@ cText2SkinI18n::cText2SkinI18n(const char *Skin): cText2SkinFile(Skin) {
cText2SkinI18n::~cText2SkinI18n() {
for (int i = 0; mPhrases[i][0]; ++i) {
+#if VDRVERSNUM >= 10507
+ for (int j = 0; j < I18nLanguages()->Size(); ++j)
+#else
for (int j = 0; j < I18nNumLanguages; ++j)
+#endif
free((void*)mPhrases[i][j]);
}
free(mPhrases);
@@ -182,7 +186,11 @@ bool cText2SkinI18n::Parse(const char *Text) {
memset(&p, 0, sizeof(tI18nPhrase));
Text += 17;
+#if VDRVERSNUM >= 10507
+ for (i = 0; i < I18nLanguages()->Size(); ++i) {
+#else
for (i = 0; i < I18nNumLanguages; ++i) {
+#endif
char *langs = strdup(I18nLanguageCode(i));
char *ptr = langs, *ep;
std::string text;
@@ -200,7 +208,11 @@ bool cText2SkinI18n::Parse(const char *Text) {
}
int idx = mNumPhrases++;
+#if VDRVERSNUM >= 10507
+ for (i = 0; i < I18nLanguages()->Size(); ++i)
+#else
for (i = 0; i < I18nNumLanguages; ++i)
+#endif
if (!p[i]) p[i] = "";
mPhrases = (tI18nPhrase*)realloc(mPhrases, (mNumPhrases + 1) * sizeof(tI18nPhrase));
memcpy(mPhrases[idx], p, sizeof(tI18nPhrase));
@@ -214,7 +226,9 @@ bool cText2SkinI18n::Parse(const char *Text) {
bool cText2SkinI18n::Load(const std::string &Filename) {
if (cText2SkinFile::Load(Filename)) {
+#if VDRVERSNUM <= 10506
I18nRegister(mPhrases, mIdentity.c_str());
+#endif
return true;
}
return false;