- maximum length of user shortcut string set to 20
- old-style user shortcut detection fixed - bx_param_string_c value needs one byte more space for the final null character
This commit is contained in:
parent
feb97a65a0
commit
3658399a4a
@ -1,5 +1,5 @@
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
// $Id: config.cc,v 1.49 2005-10-15 10:43:55 vruppert Exp $
|
||||
// $Id: config.cc,v 1.50 2005-10-22 08:07:53 vruppert Exp $
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Copyright (C) 2002 MandrakeSoft S.A.
|
||||
@ -1612,7 +1612,7 @@ void bx_init_options ()
|
||||
bx_options.Ouser_shortcut = new bx_param_string_c (BXP_USER_SHORTCUT,
|
||||
"Userbutton shortcut",
|
||||
"Defines the keyboard shortcut to be sent when you press the 'user' button in the headerbar.",
|
||||
"none", 16);
|
||||
"none", 20);
|
||||
bx_options.Ouser_shortcut->set_runtime_param (1);
|
||||
|
||||
// GDB stub
|
||||
@ -3166,7 +3166,7 @@ parse_line_formatted(char *context, int num_params, char *params[])
|
||||
}
|
||||
if(!strncmp(params[1], "keys=", 4)) {
|
||||
bx_options.Ouser_shortcut->set (strdup(¶ms[1][5]));
|
||||
if (strchr(¶ms[1][5], '-') == NULL)
|
||||
if ((strchr(¶ms[1][5], '-') == NULL) && (strlen(¶ms[1][5]) > 5))
|
||||
PARSE_WARN(("user_shortcut: old-style syntax detected"));
|
||||
} else {
|
||||
PARSE_ERR(("%s: user_shortcut directive malformed.", context));
|
||||
|
@ -1,5 +1,5 @@
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
// $Id: gui.cc,v 1.85 2005-10-21 18:00:17 vruppert Exp $
|
||||
// $Id: gui.cc,v 1.86 2005-10-22 08:07:53 vruppert Exp $
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Copyright (C) 2002 MandrakeSoft S.A.
|
||||
@ -557,7 +557,8 @@ bx_gui_c::userbutton_handler(void)
|
||||
strcpy(user_shortcut, bx_options.Ouser_shortcut->getptr());
|
||||
if ((ret > 0) && user_shortcut[0] && (strcmp(user_shortcut, "none"))) {
|
||||
ptr = strtok(user_shortcut, "-");
|
||||
if (strcmp(ptr, bx_options.Ouser_shortcut->getptr())) {
|
||||
if ((strcmp(ptr, bx_options.Ouser_shortcut->getptr())) ||
|
||||
(strlen(bx_options.Ouser_shortcut->getptr()) < 6)) {
|
||||
while (ptr) {
|
||||
symbol = get_user_key(ptr);
|
||||
if (symbol == BX_KEY_UNKNOWN) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
// $Id: siminterface.cc,v 1.110 2005-10-15 10:43:55 vruppert Exp $
|
||||
// $Id: siminterface.cc,v 1.111 2005-10-22 08:07:53 vruppert Exp $
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// See siminterface.h for description of the siminterface concept.
|
||||
@ -1200,14 +1200,15 @@ bx_param_string_c::bx_param_string_c (bx_id id,
|
||||
{
|
||||
set_type (BXT_PARAM_STRING);
|
||||
if (maxsize < 0)
|
||||
maxsize = strlen(initial_val) + 1;
|
||||
this->val = new char[maxsize];
|
||||
this->initial_val = new char[maxsize];
|
||||
maxsize = strlen(initial_val);
|
||||
this->val = new char[maxsize + 1];
|
||||
this->initial_val = new char[maxsize + 1];
|
||||
this->handler = NULL;
|
||||
this->enable_handler = NULL;
|
||||
this->maxsize = maxsize;
|
||||
strncpy (this->val, initial_val, maxsize);
|
||||
strncpy (this->initial_val, initial_val, maxsize);
|
||||
this->val[maxsize] = 0;
|
||||
this->options = new bx_param_num_c (BXP_NULL,
|
||||
"stringoptions", NULL, 0, BX_MAX_BIT64S, 0);
|
||||
set (initial_val);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
// $Id: x.cc,v 1.93 2005-10-21 18:00:17 vruppert Exp $
|
||||
// $Id: x.cc,v 1.94 2005-10-22 08:07:53 vruppert Exp $
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Copyright (C) 2002 MandrakeSoft S.A.
|
||||
@ -2085,7 +2085,7 @@ int x11_string_dialog(bx_param_string_c *param)
|
||||
int valid = 0, control = 0, oldctrl = -1;
|
||||
int done, i;
|
||||
unsigned long black_pixel, white_pixel;
|
||||
char editstr[80], name[80], text[10], value[80];
|
||||
char editstr[24], name[80], text[10], value[24];
|
||||
|
||||
strcpy(name, param->get_name());
|
||||
strcpy(value, param->getptr());
|
||||
@ -2179,7 +2179,7 @@ int x11_string_dialog(bx_param_string_c *param)
|
||||
value[strlen(value)-1] = 0;
|
||||
oldctrl = -1;
|
||||
}
|
||||
} else if ((i == 1) && (strlen(value) < 40)) {
|
||||
} else if ((i == 1) && (strlen(value) < 20)) {
|
||||
strcat(value, text);
|
||||
oldctrl = -1;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user