From f7780da63dbc6fc2715cb364b68f756c4165718c Mon Sep 17 00:00:00 2001 From: lordjaxom Date: Mon, 30 May 2005 09:23:41 +0000 Subject: - fixed a race condition (thanks to Reinhard Nissl for pointing this out) - updated finnish translations (thanks to Rolf Ahrenberg) --- CONTRIBUTORS | 4 +++- HISTORY | 5 +++++ display.c | 17 +++++++---------- i18n.c | 4 ++-- screen.c | 4 ++-- 5 files changed, 19 insertions(+), 15 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index f3c5b06..b01a31e 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -5,7 +5,7 @@ Lars Tegeler for implementing true-type-font support for implementing image-scaling and quantizing -Monroe (VDR-Portal) +Thomas Wehrspann for creating and extending the german and english vdr-wiki with text2skin sections for creating plaintext conversions of the wiki pages for inclusion in this @@ -15,3 +15,5 @@ Andreas Brugger and Stefan Schenk for doing much testing and skinning and for getting the last out of a DVB-Card for all the suggestions and requests that finally made 1.0 this powerful +Reinhard Nissl + for pointing out a deadly race condition in cText2SkinDisplayMenu::SetItem diff --git a/HISTORY b/HISTORY index 2803fbb..3a694ab 100644 --- a/HISTORY +++ b/HISTORY @@ -1,6 +1,11 @@ VDR Plugin 'text2skin' Revision History --------------------------------------- +2005-06-xx: Version 1.1 + +- fixed a race condition (thanks to Reinhard Nissl for pointing this out) +- updated finnish translations (thanks to Rolf Ahrenberg) + 2005-02-06: Version 1.0 - major rewrite diff --git a/display.c b/display.c index 7cad9a9..578c126 100644 --- a/display.c +++ b/display.c @@ -1,5 +1,5 @@ /* - * $Id: display.c,v 1.19 2005/01/26 20:43:12 lordjaxom Exp $ + * $Id: display.c,v 1.20 2005/05/30 09:23:41 lordjaxom Exp $ */ #include "render.h" @@ -810,28 +810,25 @@ void cText2SkinDisplayMenu::SetItem(const char *Text, int Index, bool Current, b } UpdateLock(); - if (Text == NULL) - return; - - tListItem *item = new tListItem(Text, Selectable); + if (Text == NULL) Text = ""; + tListItem item(Text, Selectable); for (int i = 0; i < MaxTabs; ++i) { const char *tab = GetTabbedText(Text, i); if (tab) - item->tabs[i] = tab; + item.tabs[i] = tab; if (!Tab(i + 1)) break; } if (mItems.size() <= (uint)Index) { - mItems.push_back(*item); + mItems.push_back(item); SetDirty(); } - else if (mItems[Index] != *item) { - mItems[Index] = *item; + else if (mItems[Index] != item) { + mItems[Index] = item; SetDirty(); } - delete item; if (Current && mCurrentItem != (uint)Index) { mCurrentItem = Index; diff --git a/i18n.c b/i18n.c index 8a89172..c8a0fdc 100644 --- a/i18n.c +++ b/i18n.c @@ -1,5 +1,5 @@ /* - * $Id: i18n.c,v 1.3 2005/01/20 17:07:28 lordjaxom Exp $ + * $Id: i18n.c,v 1.4 2005/05/30 09:23:41 lordjaxom Exp $ */ #include "i18n.h" @@ -137,7 +137,7 @@ const tI18nPhrase Phrases[] = { "", "", "", - "", + "Ulkoasu on liian suuri tai väärin asemoitu", "", "", "", diff --git a/screen.c b/screen.c index e0fc2c6..3412da4 100644 --- a/screen.c +++ b/screen.c @@ -1,5 +1,5 @@ /* - * $Id: screen.c,v 1.3 2005/01/26 20:42:21 lordjaxom Exp $ + * $Id: screen.c,v 1.4 2005/05/30 09:23:41 lordjaxom Exp $ */ #include "screen.h" @@ -65,7 +65,7 @@ void cText2SkinScreen::DrawBitmap(int x, int y, const cBitmap &Bitmap, const tCo #ifndef DIRECTBLIT for (int i = 0; i < mNumRegions; ++i) DrawBitmapOverlay(*mRegions[i], x, y, (cBitmap&)Bitmap, ColorMask); - //mRegions[i]->DrawBitmap(x, y, Bitmap, ColorFg, ColorBg); + //mRegions[i]->DrawBitmap(x, y, Bitmap); #else mOsd->DrawBitmap(x, y, Bitmap, ColorFg, ColorBg); #endif -- cgit v1.2.3