summaryrefslogtreecommitdiff
path: root/gtk/gtkentrycompletion.c
diff options
context:
space:
mode:
authorPavel Holejsovsky <pavel.holejsovsky@gmail.com>2012-03-23 07:09:02 +0100
committerPavel Holejsovsky <pavel.holejsovsky@gmail.com>2012-04-08 12:10:44 +0200
commit331bba1ad6c5d9535fc5a827b91019f5824e25a7 (patch)
tree7b0f1497592b101ad506cf4520f2b5691903eb43 /gtk/gtkentrycompletion.c
parentdf37446f9b4116887865b7ecfddeb535fbc0eacb (diff)
downloadgtk+-331bba1ad6c5d9535fc5a827b91019f5824e25a7.tar.gz
entrycompletion: set_property() should call property setters
gtk_entry_completion_set_property() was setting many properties by directly modifying priv values, bypassing notification invocation and possibly another actions done by gtk_completion_entry_set_xxx () functions. Fix by invoking set_xxx() instead of setting the property value directly. The real bug observerd was that setting text-column property using g_object_set() caused SIGFPE later when entry completion was about to appear. gtk_entry_completion_set_text_column () apparently does way more important things than just setting priv->text_column member. https://bugzilla.gnome.org/show_bug.cgi?id=673693
Diffstat (limited to 'gtk/gtkentrycompletion.c')
-rw-r--r--gtk/gtkentrycompletion.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/gtk/gtkentrycompletion.c b/gtk/gtkentrycompletion.c
index 8367ed9957..cb4aad68a3 100644
--- a/gtk/gtkentrycompletion.c
+++ b/gtk/gtkentrycompletion.c
@@ -651,27 +651,33 @@ gtk_entry_completion_set_property (GObject *object,
break;
case PROP_TEXT_COLUMN:
- priv->text_column = g_value_get_int (value);
+ gtk_entry_completion_set_text_column (completion,
+ g_value_get_int (value));
break;
case PROP_INLINE_COMPLETION:
- priv->inline_completion = g_value_get_boolean (value);
+ gtk_entry_completion_set_inline_completion (completion,
+ g_value_get_boolean (value));
break;
case PROP_POPUP_COMPLETION:
- priv->popup_completion = g_value_get_boolean (value);
+ gtk_entry_completion_set_popup_completion (completion,
+ g_value_get_boolean (value));
break;
case PROP_POPUP_SET_WIDTH:
- priv->popup_set_width = g_value_get_boolean (value);
+ gtk_entry_completion_set_popup_set_width (completion,
+ g_value_get_boolean (value));
break;
case PROP_POPUP_SINGLE_MATCH:
- priv->popup_single_match = g_value_get_boolean (value);
+ gtk_entry_completion_set_popup_single_match (completion,
+ g_value_get_boolean (value));
break;
case PROP_INLINE_SELECTION:
- priv->inline_selection = g_value_get_boolean (value);
+ gtk_entry_completion_set_inline_selection (completion,
+ g_value_get_boolean (value));
break;
case PROP_CELL_AREA: