diff --git a/gst/matroska/matroska-demux.c b/gst/matroska/matroska-demux.c
index 6e49baa..edeec70 100644
--- a/gst/matroska/matroska-demux.c
+++ b/gst/matroska/matroska-demux.c
@@ -2004,7 +2004,10 @@ next:
   }
   /* ouch */
   if (!update)
-    goto exit;
+  {
+      GST_PAD_STREAM_LOCK (demux->common.sinkpad);
+      goto exit;
+  }
 
   /* now grab the stream lock so that streaming cannot continue, for
    * non flushing seeks when the element is in PAUSED this could block
