mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2025-01-14 06:10:21 +00:00
Reject compose tables that are too large
The fixed-size format we use currently can only handle up to 32768 bytes of string data. If a compose file contains more, reject it with a warning. Fixes: #4873
This commit is contained in:
parent
5df314fa8f
commit
2b183a9f4e
@ -942,7 +942,12 @@ parser_get_compose_table (GtkComposeParser *parser)
|
||||
if (char_data->len > 0)
|
||||
g_string_append_c (char_data, 0);
|
||||
|
||||
g_assert (char_data->len < 0x8000);
|
||||
if (char_data->len >= 0x8000)
|
||||
{
|
||||
g_warning ("GTK can't handle compose tables this large (%s)", parser->compose_file ? parser->compose_file : "");
|
||||
g_string_free (char_data, TRUE);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
encoded_value = (guint16) (char_data->len | 0x8000);
|
||||
g_string_append (char_data, value);
|
||||
|
Loading…
Reference in New Issue
Block a user