forked from enlightenment/enlightenment
parent
2a905bb70d
commit
4ae3818d7c
|
@ -149,31 +149,26 @@ _e_kbd_buf_actual_string_update(E_Kbd_Buf *kb)
|
|||
char *actual = NULL;
|
||||
int actual_len = 0;
|
||||
unsigned int actual_size = 0;
|
||||
E_Kbd_Buf_Keystroke *ks;
|
||||
|
||||
_e_kbd_buf_actual_string_clear(kb);
|
||||
for (l = kb->keystrokes; l; l = l->next)
|
||||
EINA_LIST_FOREACH(kb->keystrokes, l, ks)
|
||||
{
|
||||
E_Kbd_Buf_Keystroke *ks;
|
||||
const char *str;
|
||||
|
||||
ks = l->data;
|
||||
str = _e_kbd_buf_keystroke_string_get(kb, ks);
|
||||
if (str)
|
||||
if (!str) continue;
|
||||
if (!actual) actual_size += 64, actual = malloc(actual_size);
|
||||
else if ((actual_len + strlen(str) + 1) > actual_size)
|
||||
{
|
||||
if ((actual_len + strlen(str) + 1) > actual_size)
|
||||
{
|
||||
actual_size += 64;
|
||||
actual = realloc(actual, actual_size);
|
||||
}
|
||||
strcpy(actual + actual_len, str);
|
||||
actual_len += strlen(str);
|
||||
actual_size += 64;
|
||||
actual = realloc(actual, actual_size);
|
||||
}
|
||||
strcpy(actual + actual_len, str);
|
||||
actual_len += strlen(str);
|
||||
}
|
||||
if (actual)
|
||||
{
|
||||
kb->actual_string = eina_stringshare_add(actual);
|
||||
if (actual) free(actual);
|
||||
}
|
||||
kb->actual_string = eina_stringshare_add(actual);
|
||||
free(actual);
|
||||
}
|
||||
|
||||
static const char *
|
||||
|
|
Loading…
Reference in New Issue