Remove gtk_paste_point_override mark if we don't insert any text.

This patch fixes bug #590459.
This commit is contained in:
Ignacio Casal Quinteiro 2011-01-28 13:24:26 +01:00
parent 1cd82eff4b
commit b7de18ab35

View File

@ -3292,9 +3292,7 @@ get_paste_point (GtkTextBuffer *buffer,
gtk_text_buffer_get_iter_at_mark (buffer, &insert_point,
paste_point_override);
if (clear_afterward)
gtk_text_buffer_delete_mark (buffer,
gtk_text_buffer_get_mark (buffer,
"gtk_paste_point_override"));
gtk_text_buffer_delete_mark (buffer, paste_point_override);
}
else
{
@ -3393,6 +3391,18 @@ clipboard_text_received (GtkClipboard *clipboard,
emit_paste_done (buffer, clipboard);
}
else
{
/* It may happen that we set a point override but we are not inserting
any text, so we must remove it afterwards */
GtkTextMark *paste_point_override;
paste_point_override = gtk_text_buffer_get_mark (buffer,
"gtk_paste_point_override");
if (paste_point_override != NULL)
gtk_text_buffer_delete_mark (buffer, paste_point_override);
}
free_clipboard_request (request_data);
}