Message ID | 1338591268-23962-4-git-send-email-akong@redhat.com |
---|---|
State | New |
Headers | show |
On Sat, 2 Jun 2012 06:54:25 +0800 Amos Kong <akong@redhat.com> wrote: > There are many maps of keycode 0x56 in pc-bios/keymaps/* > pc-bios/keymaps/common:less 0x56 > pc-bios/keymaps/common:greater 0x56 shift > pc-bios/keymaps/common:bar 0x56 altgr > pc-bios/keymaps/common:brokenbar 0x56 shift altgr > > This patch just rename '<' to 'less', QAPI might add new > variable by adding a prefix to keyname, '$PREFIX_<' is not > available, '$PREFIX_less' is ok. > > For compatibility, convert user inputted '<' to 'less'. > > Signed-off-by: Amos Kong <akong@redhat.com> > --- > monitor.c | 9 ++++++++- > 1 files changed, 8 insertions(+), 1 deletions(-) > > diff --git a/monitor.c b/monitor.c > index 12a6fe2..ecfcaa4 100644 > --- a/monitor.c > +++ b/monitor.c > @@ -1302,7 +1302,7 @@ static const KeyDef key_defs[] = { > { 0x48, "kp_8" }, > { 0x49, "kp_9" }, > > - { 0x56, "<" }, > + { 0x56, "less" }, > > { 0x57, "f11" }, > { 0x58, "f12" }, > @@ -1406,6 +1406,13 @@ static void do_sendkey(Monitor *mon, const QDict *qdict) > monitor_printf(mon, "too many keys\n"); > return; > } > + > + /* Be compatible with old interface, convert user inputted "<" */ > + if (!strcmp(keyname_buf, "<")) { > + pstrcpy(keyname_buf, sizeof(keyname_buf), "less"); > + keyname_len = 4; > + } I'm not against this change, but it breaks 'sendkey <-a' > + > keyname_buf[keyname_len] = 0; > keycode = get_keycode(keyname_buf); > if (keycode < 0) {
----- Original Message ----- > On Sat, 2 Jun 2012 06:54:25 +0800 > Amos Kong <akong@redhat.com> wrote: > > > There are many maps of keycode 0x56 in pc-bios/keymaps/* > > pc-bios/keymaps/common:less 0x56 > > pc-bios/keymaps/common:greater 0x56 shift > > pc-bios/keymaps/common:bar 0x56 altgr > > pc-bios/keymaps/common:brokenbar 0x56 shift altgr > > > > This patch just rename '<' to 'less', QAPI might add new > > variable by adding a prefix to keyname, '$PREFIX_<' is not > > available, '$PREFIX_less' is ok. > > > > For compatibility, convert user inputted '<' to 'less'. > > > > Signed-off-by: Amos Kong <akong@redhat.com> > > --- > > monitor.c | 9 ++++++++- > > 1 files changed, 8 insertions(+), 1 deletions(-) > > > > diff --git a/monitor.c b/monitor.c > > index 12a6fe2..ecfcaa4 100644 > > --- a/monitor.c > > +++ b/monitor.c > > @@ -1302,7 +1302,7 @@ static const KeyDef key_defs[] = { > > { 0x48, "kp_8" }, > > { 0x49, "kp_9" }, > > > > - { 0x56, "<" }, > > + { 0x56, "less" }, > > > > { 0x57, "f11" }, > > { 0x58, "f12" }, > > @@ -1406,6 +1406,13 @@ static void do_sendkey(Monitor *mon, const > > QDict *qdict) > > monitor_printf(mon, "too many keys\n"); > > return; > > } > > + > > + /* Be compatible with old interface, convert user > > inputted "<" */ > > + if (!strcmp(keyname_buf, "<")) { > > + pstrcpy(keyname_buf, sizeof(keyname_buf), "less"); > > + keyname_len = 4; > > + } > > I'm not against this change, but it breaks 'sendkey <-a' Thanks for catching this, already fixed: @@ -978,7 +1141,7 @@ void hmp_sendkey(Monitor *mon, const QDict *qdict) pstrcpy(keyname_buf, sizeof(keyname_buf), keys); /* Be compatible with old interface, convert user inputted "<" */ - if (!strcmp(keyname_buf, "<")) { + if (!strncmp(keyname_buf, "<", 1) && keyname_len == 1) { pstrcpy(keyname_buf, sizeof(keyname_buf), "less"); keyname_len = 4; } > > > + > > keyname_buf[keyname_len] = 0; > > keycode = get_keycode(keyname_buf); > > if (keycode < 0) { > > >
diff --git a/monitor.c b/monitor.c index 12a6fe2..ecfcaa4 100644 --- a/monitor.c +++ b/monitor.c @@ -1302,7 +1302,7 @@ static const KeyDef key_defs[] = { { 0x48, "kp_8" }, { 0x49, "kp_9" }, - { 0x56, "<" }, + { 0x56, "less" }, { 0x57, "f11" }, { 0x58, "f12" }, @@ -1406,6 +1406,13 @@ static void do_sendkey(Monitor *mon, const QDict *qdict) monitor_printf(mon, "too many keys\n"); return; } + + /* Be compatible with old interface, convert user inputted "<" */ + if (!strcmp(keyname_buf, "<")) { + pstrcpy(keyname_buf, sizeof(keyname_buf), "less"); + keyname_len = 4; + } + keyname_buf[keyname_len] = 0; keycode = get_keycode(keyname_buf); if (keycode < 0) {
There are many maps of keycode 0x56 in pc-bios/keymaps/* pc-bios/keymaps/common:less 0x56 pc-bios/keymaps/common:greater 0x56 shift pc-bios/keymaps/common:bar 0x56 altgr pc-bios/keymaps/common:brokenbar 0x56 shift altgr This patch just rename '<' to 'less', QAPI might add new variable by adding a prefix to keyname, '$PREFIX_<' is not available, '$PREFIX_less' is ok. For compatibility, convert user inputted '<' to 'less'. Signed-off-by: Amos Kong <akong@redhat.com> --- monitor.c | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletions(-)