diff options
author | mini73 <@> | 2014-10-11 16:56:24 +0200 |
---|---|---|
committer | Johns <johns98@gmx.net> | 2014-10-11 16:56:24 +0200 |
commit | c2556eb90a83185e32f801163281eb8f30ea1b40 (patch) | |
tree | 6a97e81ef369289c7d975d530663d4f2cb36ac74 | |
parent | a3c0052c4b87b44679d8264c89d085fcda721a2e (diff) | |
download | vdr-plugin-softhddevice-c2556eb90a83185e32f801163281eb8f30ea1b40.tar.gz vdr-plugin-softhddevice-c2556eb90a83185e32f801163281eb8f30ea1b40.tar.bz2 |
Fix bug: random rubbish at the end of letter.
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | video.c | 9 |
2 files changed, 14 insertions, 2 deletions
@@ -1,5 +1,10 @@ +User mini73 +Date: Sat Oct 11 16:53:18 CEST 2014 + + Fix bug: random rubbish at the end of letter. + User johns -Date: +Date: Tue Sep 23 12:36:39 CEST 2014 Fix audio thread close race condition. Support ffmpeg new AVFrame API in the audio codec. @@ -9736,6 +9736,7 @@ static void VideoEvent(void) const char *keynam; char buf[64]; char letter[64]; + int letter_len; uint32_t values[1]; VideoThreadLock(); @@ -9775,8 +9776,14 @@ static void VideoEvent(void) break; case KeyPress: VideoThreadLock(); - XLookupString(&event.xkey, letter, sizeof(letter), &keysym, NULL); + letter_len = + XLookupString(&event.xkey, letter, sizeof(letter) - 1, &keysym, + NULL); VideoThreadUnlock(); + if (letter_len < 0) { + letter_len = 0; + } + letter[letter_len] = '\0'; if (keysym == NoSymbol) { Warning(_("video/event: No symbol for %d\n"), event.xkey.keycode); |