From ccae0e1732d12ca312960ac83681d4d5f8aad1ea Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Thu, 4 Mar 2021 14:14:09 -0500 Subject: [PATCH] text: Optimize away 0-change insertions and deletions We can short-circuit insert and delete calls that are not causing any change. --- gtk/gtktext.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gtk/gtktext.c b/gtk/gtktext.c index 7791029e52..20c7fee841 100644 --- a/gtk/gtktext.c +++ b/gtk/gtktext.c @@ -3309,6 +3309,9 @@ gtk_text_insert_text (GtkText *self, int n_inserted; int n_chars; + if (length == 0) + return; + n_chars = g_utf8_strlen (text, length); /* @@ -3338,6 +3341,9 @@ gtk_text_delete_text (GtkText *self, { GtkTextPrivate *priv = gtk_text_get_instance_private (self); + if (start_pos == end_pos) + return; + begin_change (self); gtk_entry_buffer_delete_text (get_buffer (self), start_pos, end_pos - start_pos);