--- gtkcomboboxtext.c.orig	2011-02-18 10:07:23.216003950 -0500
+++ gtkcomboboxtext.c	2011-02-18 10:11:58.788558819 -0500
@@ -579,8 +579,15 @@
   gchar *text = NULL;
 
   g_return_val_if_fail (GTK_IS_COMBO_BOX_TEXT (combo_box), NULL);
+  
+  if (gtk_combo_box_get_has_entry (GTK_COMBO_BOX (combo_box)))
+    {
+      GtkWidget *entry = gtk_bin_get_child (GTK_BIN (combo_box));
+      const gchar *s = gtk_entry_get_text (GTK_ENTRY (entry));
 
-  if (gtk_combo_box_get_active_iter (GTK_COMBO_BOX (combo_box), &iter))
+      text = g_strdup(s);
+    }      
+  else if (gtk_combo_box_get_active_iter (GTK_COMBO_BOX (combo_box), &iter))
     {
       GtkTreeModel *model;
       gint text_column;
