--- gstbasetransform.c.orig	2006-04-20 16:03:07.000000000 +0300
+++ gstbasetransform.c	2006-04-20 15:33:59.000000000 +0300
@@ -1438,8 +1438,6 @@
       else
         trans->have_same_caps = trans->passthrough;
       GST_DEBUG_OBJECT (trans, "have_same_caps %d", trans->have_same_caps);
-      trans->negotiated = FALSE;
-      trans->have_newsegment = FALSE;
       gst_segment_init (&trans->segment, GST_FORMAT_UNDEFINED);
       GST_OBJECT_UNLOCK (trans);
       break;
@@ -1455,6 +1453,8 @@
     case GST_STATE_CHANGE_PLAYING_TO_PAUSED:
       break;
     case GST_STATE_CHANGE_PAUSED_TO_READY:
+      trans->negotiated = FALSE;
+      trans->have_newsegment = FALSE;
       trans->have_same_caps = FALSE;
       /* We can only reset the passthrough mode if the instance told us to 
          handle it in configure_caps */
