1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-26 00:55:14 +00:00

Fix a bug where static memory was being free'd as a key to a hash table.

This resulted in a crash when more than one keyboard layout was configured.
See http://bugzilla.gnome.org/show_bug.cgi?id=421252 for more details.

Reported by:	Ivan Georgiev <ivan@kytex.bg>
This commit is contained in:
Joe Marcus Clarke 2007-03-21 22:16:18 +00:00
parent ce7c4e18d7
commit 2f325a4929
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=187950
2 changed files with 19 additions and 0 deletions

View File

@ -8,6 +8,7 @@
PORTNAME= libgnomekbd
PORTVERSION= 2.18.0
PORTREVISION= 1
CATEGORIES= x11 gnome
MASTER_SITES= GNOME
DIST_SUBDIR= gnome2

View File

@ -0,0 +1,18 @@
--- libgnomekbd/gkbd-indicator.c.orig Wed Mar 21 17:11:21 2007
+++ libgnomekbd/gkbd-indicator.c Wed Mar 21 17:11:23 2007
@@ -265,11 +265,14 @@ gkbd_indicator_prepare_drawing (GkbdIndi
layouts_variants,
group);
char *variant_name;
+ char *layout_name_ptr;
if (!gkbd_keyboard_config_split_items
- (full_layout_name, &layout_name,
+ (full_layout_name, &layout_name_ptr,
&variant_name))
/* just in case */
layout_name = g_strdup (full_layout_name);
+ else
+ layout_name = g_strdup (layout_name_ptr);
if (globals.short_group_names != NULL) {
char *short_group_name =