From 6c8c62e93c543fd940169da519e6528c47e54717 Mon Sep 17 00:00:00 2001 From: Christian Wieninger Date: Sat, 29 Aug 2009 13:53:42 +0200 Subject: fix UTF8-character handling in timer filenames --- epgsearchext.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'epgsearchext.c') diff --git a/epgsearchext.c b/epgsearchext.c index 32e9c40..37be75a 100644 --- a/epgsearchext.c +++ b/epgsearchext.c @@ -628,15 +628,16 @@ char* cSearchExt::BuildFile(const cEvent* pEvent) const return file; const char *Subtitle = pEvent ? pEvent->ShortText() : NULL; - char SubtitleBuffer[MAX_SUBTITLE_LENGTH]; + char SubtitleBuffer[Utf8BufSize(MAX_SUBTITLE_LENGTH)]; if (isempty(Subtitle)) { sprintf(SubtitleBuffer, "%s-%s", GETDATESTRING(pEvent), GETTIMESTRING(pEvent)); Subtitle = SubtitleBuffer; } - else if (strlen(Subtitle) > MAX_SUBTITLE_LENGTH) + else if (Utf8StrLen(Subtitle) > MAX_SUBTITLE_LENGTH) { - strn0cpy(SubtitleBuffer, Subtitle, MAX_SUBTITLE_LENGTH); + Utf8Strn0Cpy(SubtitleBuffer, Subtitle, sizeof(SubtitleBuffer)); + SubtitleBuffer[Utf8SymChars(SubtitleBuffer, MAX_SUBTITLE_LENGTH)] = 0; Subtitle = SubtitleBuffer; } -- cgit v1.2.3