diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
index 16b7f2a..a4d8686 100644
--- a/gtk/gtkentry.c
+++ b/gtk/gtkentry.c
@@ -6355,25 +6355,27 @@ gtk_entry_update_primary_selection (GtkEntry *entry)
   targets = gtk_target_table_new_from_list (list, &n_targets);
 
   clipboard = gtk_widget_get_clipboard (GTK_WIDGET (entry), GDK_SELECTION_PRIMARY);
   
   if (gtk_editable_get_selection_bounds (GTK_EDITABLE (entry), &start, &end))
     {
       if (!gtk_clipboard_set_with_owner (clipboard, targets, n_targets,
 					 primary_get_cb, primary_clear_cb, G_OBJECT (entry)))
 	primary_clear_cb (clipboard, entry);
     }
+  /*
   else
     {
       if (gtk_clipboard_get_owner (clipboard) == G_OBJECT (entry))
 	gtk_clipboard_clear (clipboard);
     }
+  */
 
   gtk_target_table_free (targets, n_targets);
   gtk_target_list_unref (list);
 }
 
 static void
 gtk_entry_clear (GtkEntry             *entry,
                  GtkEntryIconPosition  icon_pos)
 {
   GtkEntryPrivate *priv = GTK_ENTRY_GET_PRIVATE (entry);
diff --git a/gtk/gtklabel.c b/gtk/gtklabel.c
index 10e5850..4cfc71b 100644
--- a/gtk/gtklabel.c
+++ b/gtk/gtklabel.c
@@ -4877,25 +4877,27 @@ gtk_label_select_region_index (GtkLabel *label,
 
           gtk_clipboard_set_with_owner (clipboard,
                                         targets, n_targets,
                                         get_text_callback,
                                         clear_text_callback,
                                         G_OBJECT (label));
 
           gtk_target_table_free (targets, n_targets);
           gtk_target_list_unref (list);
         }
+      /*
       else
         {
           if (gtk_clipboard_get_owner (clipboard) == G_OBJECT (label))
             gtk_clipboard_clear (clipboard);
         }
+      */
 
       gtk_widget_queue_draw (GTK_WIDGET (label));
 
       g_object_freeze_notify (G_OBJECT (label));
       g_object_notify (G_OBJECT (label), "cursor-position");
       g_object_notify (G_OBJECT (label), "selection-bound");
       g_object_thaw_notify (G_OBJECT (label));
     }
 }
 
diff --git a/gtk/gtktextbuffer.c b/gtk/gtktextbuffer.c
index dca5686..3e9b94c 100644
--- a/gtk/gtktextbuffer.c
+++ b/gtk/gtktextbuffer.c
@@ -3607,22 +3607,24 @@ update_selection_clipboards (GtkTextBuffer *buffer)
       GtkTextIter end;
       
       SelectionClipboard *selection_clipboard = tmp_list->data;
       GtkClipboard *clipboard = selection_clipboard->clipboard;
 
       /* Determine whether we have a selection and adjust X selection
        * accordingly.
        */
       if (!gtk_text_buffer_get_selection_bounds (buffer, &start, &end))
 	{
+          /*
 	  if (gtk_clipboard_get_owner (clipboard) == G_OBJECT (buffer))
 	    gtk_clipboard_clear (clipboard);
+          */
 	}
       else
 	{
 	  /* Even if we already have the selection, we need to update our
 	   * timestamp.
 	   */
 	  if (!gtk_clipboard_set_with_owner (clipboard,
                                              priv->copy_target_entries,
                                              priv->n_copy_target_entries,
 					     clipboard_get_selection_cb,
