+
+ int size = data->GetDataSize( selection_data->target );
+
+ if (size == 0) return;
+
+ char *d = new char[size];
+
+ data->GetDataHere( selection_data->target, (void*) d );
+
+ gtk_selection_data_set(
+ selection_data,
+ GDK_SELECTION_TYPE_STRING,
+ 8*sizeof(gchar),
+ (unsigned char*) d,
+ size );