summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2005-04-06 12:46:41 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2005-04-06 12:46:41 +0000
commitaede454ea26723fe85cd5ba5a1d420fe4ec45a07 (patch)
treeb8228114567e1e3dd9574ce301f1ccd5582414d6
parente267227ea909ef37a0a391c7fc2be5433ff91d6f (diff)
downloadgtk+-aede454ea26723fe85cd5ba5a1d420fe4ec45a07.tar.gz
Don't modify scanner->value, copy it first. (#165693, Tommi Komulainen)
2005-04-06 Matthias Clasen <mclasen@redhat.com> * gtk/gtkrc.c (gtk_rc_parse_style): Don't modify scanner->value, copy it first. (#165693, Tommi Komulainen)
-rw-r--r--ChangeLog5
-rw-r--r--ChangeLog.pre-2-105
-rw-r--r--ChangeLog.pre-2-85
-rw-r--r--gtk/gtkrc.c7
4 files changed, 20 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index c665a36624..91ca4d419f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2005-04-06 Matthias Clasen <mclasen@redhat.com>
+
+ * gtk/gtkrc.c (gtk_rc_parse_style): Don't modify scanner->value,
+ copy it first. (#165693, Tommi Komulainen)
+
2005-04-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_grab_focus):
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index c665a36624..91ca4d419f 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,3 +1,8 @@
+2005-04-06 Matthias Clasen <mclasen@redhat.com>
+
+ * gtk/gtkrc.c (gtk_rc_parse_style): Don't modify scanner->value,
+ copy it first. (#165693, Tommi Komulainen)
+
2005-04-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_grab_focus):
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index c665a36624..91ca4d419f 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,3 +1,8 @@
+2005-04-06 Matthias Clasen <mclasen@redhat.com>
+
+ * gtk/gtkrc.c (gtk_rc_parse_style): Don't modify scanner->value,
+ copy it first. (#165693, Tommi Komulainen)
+
2005-04-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_grab_focus):
diff --git a/gtk/gtkrc.c b/gtk/gtkrc.c
index 1953cd0844..82221c8e54 100644
--- a/gtk/gtkrc.c
+++ b/gtk/gtkrc.c
@@ -2696,6 +2696,7 @@ gtk_rc_parse_style (GtkRcContext *context,
scanner->next_value.v_identifier[0] <= 'Z') /* match namespaced type names */
{
GtkRcProperty prop = { 0, 0, NULL, { 0, }, };
+ gchar *name;
g_scanner_get_next_token (scanner); /* eat type name */
prop.type_name = g_quark_from_string (scanner->value.v_identifier);
@@ -2713,8 +2714,10 @@ gtk_rc_parse_style (GtkRcContext *context,
}
/* it's important that we do the same canonification as GParamSpecPool here */
- g_strcanon (scanner->value.v_identifier, G_CSET_A_2_Z G_CSET_a_2_z G_CSET_DIGITS "-", '-');
- prop.property_name = g_quark_from_string (scanner->value.v_identifier);
+ name = g_strdup (scanner->value.v_identifier);
+ g_strcanon (name, G_CSET_A_2_Z G_CSET_a_2_z G_CSET_DIGITS "-", '-');
+ prop.property_name = g_quark_from_string (name);
+ g_free (name)
token = gtk_rc_parse_assignment (scanner, &prop);
if (token == G_TOKEN_NONE)