diff -uNr gtk+-2.2.4.old/gtk/gtkbutton.c gtk+-2.2.4/gtk/gtkbutton.c
--- gtk+-2.2.4.old/gtk/gtkbutton.c	2002-12-10 16:39:53.000000000 -0500
+++ gtk+-2.2.4/gtk/gtkbutton.c	2003-11-11 18:26:40.000000000 -0500
@@ -879,6 +879,7 @@
 
       if ((button->relief != GTK_RELIEF_NONE) ||
 	  ((GTK_WIDGET_STATE(widget) != GTK_STATE_NORMAL) &&
+	   (GTK_WIDGET_STATE(widget) != GTK_STATE_ACTIVE || button->depressed) &&
 	   (GTK_WIDGET_STATE(widget) != GTK_STATE_INSENSITIVE)))
 	gtk_paint_box (widget->style, widget->window,
 		       state_type,
