add: if (ref != NULL) {  playlist->_priv->current = gtk_tree_row_reference_get_path (ref); gtk_tree_row_reference_free (ref); }
context: gtk_playlist_remove_files (GtkWidget *widget, gpointer user_data){	GtkPlaylist *playlist = (GtkPlaylist *)user_data;	GtkTreeSelection *selection;	gboolean is_selected = FALSE;	selection = gtk_tree_view_get_selection		(GTK_TREE_VIEW (playlist->_priv->treeview));	if (selection == NULL)		return;	if (playlist->_priv->current != NULL)		is_selected = gtk_tree_selection_path_is_selected (selection,				playlist->_priv->current);	gtk_tree_selection_selected_foreach (selection,			gtk_playlist_foreach_selected,			(gpointer) playlist);	if (is_selected == TRUE)	{		gtk_tree_path_free (playlist->_priv->current);		playlist->_priv->current = NULL;		g_signal_emit (G_OBJECT (playlist),				gtk_playlist_table_signals[CURRENT_REMOVED], 0,				NULL);	} else {		g_signal_emit (G_OBJECT (playlist),				gtk_playlist_table_signals[CHANGED], 0,				NULL);	}}