]> Pileus Git - ~andy/gtk/commitdiff
Fix various problems when truncating the inserted text to fit into the
authorOwen Taylor <otaylor@redhat.com>
Wed, 6 Mar 2002 13:17:11 +0000 (13:17 +0000)
committerOwen Taylor <otaylor@src.gnome.org>
Wed, 6 Mar 2002 13:17:11 +0000 (13:17 +0000)
Wed Mar  6 00:38:29 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix various problems
        when truncating the inserted text to fit into the GtkEntry
        size limit of 65kb. (#73119)

ChangeLog
ChangeLog.pre-2-0
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtkentry.c

index d5aaceb8aaeda52a3a6d1808f1d6c855e82aef74..1af13c835531f633770a9022d0caaef90e341aff 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Wed Mar  6 00:38:29 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix various problems
+       when truncating the inserted text to fit into the GtkEntry
+       size limit of 65kb. (#73119)
+
 Wed Mar  6 00:20:59 2002  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c
index d5aaceb8aaeda52a3a6d1808f1d6c855e82aef74..1af13c835531f633770a9022d0caaef90e341aff 100644 (file)
@@ -1,3 +1,9 @@
+Wed Mar  6 00:38:29 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix various problems
+       when truncating the inserted text to fit into the GtkEntry
+       size limit of 65kb. (#73119)
+
 Wed Mar  6 00:20:59 2002  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c
index d5aaceb8aaeda52a3a6d1808f1d6c855e82aef74..1af13c835531f633770a9022d0caaef90e341aff 100644 (file)
@@ -1,3 +1,9 @@
+Wed Mar  6 00:38:29 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix various problems
+       when truncating the inserted text to fit into the GtkEntry
+       size limit of 65kb. (#73119)
+
 Wed Mar  6 00:20:59 2002  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c
index d5aaceb8aaeda52a3a6d1808f1d6c855e82aef74..1af13c835531f633770a9022d0caaef90e341aff 100644 (file)
@@ -1,3 +1,9 @@
+Wed Mar  6 00:38:29 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix various problems
+       when truncating the inserted text to fit into the GtkEntry
+       size limit of 65kb. (#73119)
+
 Wed Mar  6 00:20:59 2002  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c
index d5aaceb8aaeda52a3a6d1808f1d6c855e82aef74..1af13c835531f633770a9022d0caaef90e341aff 100644 (file)
@@ -1,3 +1,9 @@
+Wed Mar  6 00:38:29 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix various problems
+       when truncating the inserted text to fit into the GtkEntry
+       size limit of 65kb. (#73119)
+
 Wed Mar  6 00:20:59 2002  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c
index d5aaceb8aaeda52a3a6d1808f1d6c855e82aef74..1af13c835531f633770a9022d0caaef90e341aff 100644 (file)
@@ -1,3 +1,9 @@
+Wed Mar  6 00:38:29 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix various problems
+       when truncating the inserted text to fit into the GtkEntry
+       size limit of 65kb. (#73119)
+
 Wed Mar  6 00:20:59 2002  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c
index d5aaceb8aaeda52a3a6d1808f1d6c855e82aef74..1af13c835531f633770a9022d0caaef90e341aff 100644 (file)
@@ -1,3 +1,9 @@
+Wed Mar  6 00:38:29 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix various problems
+       when truncating the inserted text to fit into the GtkEntry
+       size limit of 65kb. (#73119)
+
 Wed Mar  6 00:20:59 2002  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c
index 86949860f8212a663f1e1b773303152075f5ec28..fd5733a9081ce7b451f7232a798e9c0201c51c95 100644 (file)
@@ -1862,7 +1862,12 @@ gtk_entry_real_insert_text (GtkEditable *editable,
              else
                {
                  entry->text_size = MAX_SIZE;
-                 new_text_length = entry->text_size - entry->n_bytes - 1;
+                 if (new_text_length > (gint)entry->text_size - (gint)entry->n_bytes - 1)
+                   {
+                     new_text_length = (gint)entry->text_size - (gint)entry->n_bytes - 1;
+                     new_text_length = g_utf8_find_prev_char (new_text, new_text + new_text_length + 1) - new_text;
+                     n_chars = g_utf8_strlen (new_text, new_text_length);
+                   }
                  break;
                }
            }