diff --git a/gtk/gtkpaned.c b/gtk/gtkpaned.c
index d0f4443..1668182 100644
--- a/gtk/gtkpaned.c
+++ b/gtk/gtkpaned.c
@@ -1495,6 +1495,9 @@ gtk_paned_set_position (GtkPaned *paned,
   
   g_return_if_fail (GTK_IS_PANED (paned));
 
+  if (paned->child1_size == position)
+    return;
+
   object = G_OBJECT (paned);
   
   if (position >= 0)
