35dd357d6a2f051d18e75fba07d29f16881943b4
diff --git a/lib/widgets/ephy-location-entry.c b/lib/widgets/ephy-location-entry.c
index 4c9b50d..05bf1fa 100644
--- a/lib/widgets/ephy-location-entry.c
+++ b/lib/widgets/ephy-location-entry.c
@@ -952,42 +952,38 @@ extracell_data_func (GtkCellLayout *cell_layout,
 	gtk_tree_model_get (tree_model, iter, priv->extra_col, &cdata, -1);
 
 	g_value_init (&text, G_TYPE_STRING);
-	g_value_init (&visible, G_TYPE_BOOLEAN);
-	
 	g_value_take_string (&text, cdata);
-	g_value_set_boolean (&visible, (cdata != NULL));
-
 	g_object_set_property (G_OBJECT (cell), "text", &text);
-	g_object_set_property (G_OBJECT (cell), "visible", &visible);
-	
+	g_value_unset (&text);
 
-	list = pango_attr_list_new ();
+	g_value_init (&visible, G_TYPE_BOOLEAN);
+	g_value_set_boolean (&visible, (cdata != NULL));
+	g_object_set_property (G_OBJECT (cell), "visible", &visible);
+	g_value_unset (&visible);
 
-	if (cdata)
+	if (cdata &&
+	    g_regex_match (priv->regex, cdata, G_REGEX_MATCH_NOTEMPTY, &match))
 	{
-		g_regex_match (priv->regex, cdata, G_REGEX_MATCH_NOTEMPTY, &match);
+		list = pango_attr_list_new ();
 
 		while (g_match_info_matches (match)) {
-		    g_match_info_fetch_pos (match, 0, &start, &end);
+			g_match_info_fetch_pos (match, 0, &start, &end);
 
-		    att = pango_attr_weight_new(PANGO_WEIGHT_BOLD);
-		    att->start_index = start;
-		    att->end_index = end;
+			att = pango_attr_weight_new (PANGO_WEIGHT_BOLD);
+			att->start_index = start;
+			att->end_index = end;
 
-		    pango_attr_list_insert (list, att);
-		    g_match_info_next (match, NULL);
+			pango_attr_list_insert (list, att);
+			g_match_info_next (match, NULL);
 		}
 
 		g_object_set (G_OBJECT (cell),
-		        "attributes", list,
-		        NULL);
+			"attributes", list,
+			NULL);
 
 		pango_attr_list_unref (list);
 		g_match_info_free (match);
 	}
-
-	g_value_unset (&text);
-	g_value_unset (&visible);
 }
 
 static void
