diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2002-12-15 11:05:19 +0100 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2002-12-15 11:05:19 +0100 |
commit | d610d95e509c04fec7be22f4a7ae2fd308fa53a9 (patch) | |
tree | 467fc5f33bbaa36a0b9f1e4ca0be9aae956554cf /menuitems.c | |
parent | b90e708733789290c633e620f24bd6eb08dd0c2d (diff) | |
download | vdr-d610d95e509c04fec7be22f4a7ae2fd308fa53a9.tar.gz vdr-d610d95e509c04fec7be22f4a7ae2fd308fa53a9.tar.bz2 |
Fixed deleting characters in string entry fields in 'insert' mode
Diffstat (limited to 'menuitems.c')
-rw-r--r-- | menuitems.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/menuitems.c b/menuitems.c index da65db10..c92d5318 100644 --- a/menuitems.c +++ b/menuitems.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: menuitems.c 1.10 2002/12/15 10:58:00 kls Exp $ + * $Id: menuitems.c 1.11 2002/12/15 11:05:19 kls Exp $ */ #include "menuitems.h" @@ -262,7 +262,8 @@ eOSState cMenuEditStrItem::ProcessKey(eKeys Key) case kYellow: // Remove the character at current position; in insert mode it is the character to the right of cursor if (pos >= 0) { if (strlen(value) > 1) { - memmove(value + pos, value + pos + 1, strlen(value) - pos); + if (!insert || pos < int(strlen(value)) - 1) + memmove(value + pos, value + pos + 1, strlen(value) - pos); // reduce position, if we removed the last character if (pos == int(strlen(value))) pos--; |