]> git.saurik.com Git - wxWidgets.git/commitdiff
Use GTK_IS_ENTRY() to determine if widget is a GtkEntry.
authorPaul Cornett <paulcor@bullseye.com>
Wed, 11 Jul 2012 16:49:07 +0000 (16:49 +0000)
committerPaul Cornett <paulcor@bullseye.com>
Wed, 11 Jul 2012 16:49:07 +0000 (16:49 +0000)
If widget is not a GtkEntry, using GTK_ENTRY() will result in assertion or crash

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/gtk/textentry.cpp

index c1badd3203d8d2ecc6ef9dfea0ab7972db362f10..d9798282c021e0fcd143643e564f9c22db185234 100644 (file)
@@ -204,9 +204,12 @@ long wxTextEntry::GetLastPosition() const
 {
     // this can't be implemented for arbitrary GtkEditable so only do it for
     // GtkEntries
-    GtkEntry * const entry = GTK_ENTRY(GetEditable());
+    long pos = -1;
+    GtkEditable* editable = GetEditable();
+    if (GTK_IS_ENTRY(editable))
+        pos = gtk_entry_get_text_length(GTK_ENTRY(editable));
 
-    return entry ? gtk_entry_get_text_length(entry) : -1;
+    return pos;
 }
 
 // ----------------------------------------------------------------------------